« first day (1148 days earlier)      last day (3841 days later) » 
02:00 - 21:0021:00 - 23:00

2:29 AM
@MichaelT Rep capped
It depresses me that my kitten comment generated 3 comments and and 2 edits..
My jokes apparently suck ;)
 
user55340
3:00 AM
@jozefg I keep digging for an old meme that I think existed in comp.lang.c about compilers and making bats fly out of the system or some such.
 
user55340
You should have gone with saying that it won't prevent errors induced by suicidal squirrels.
 
user55340
> 19.9: Is C++ a superset of C? Can I use a C++ compiler to compile C code?

C++ is a superset of something, we're not sure what. You can use a C++ compiler to compile C code, but the results may surprise you.
 
3:28 AM
@MichaelT Oh man, seebs, I haven't emailed him in forever..
He lives right around me
@JimmyHoffa Well he's asking for classes of functions, this isn't some sort of algebraic structure which is a few operations and sets of objects, it's sets of objects + sets of arrows which points to a [small] category. Anything on top of this is just gravy, he probably wants categories with exponentials and products, that should give him most of what he wants
I suppose a CCC would work
 
4:00 AM
@jozefg you know all of this stuff a lot better than me... I wasn't completely certain what he was looking for but I'm still not convinced it can't be derived as an arrow
 
@JimmyHoffa The problem is that Arrow has an embedding of Hask, which is irksome sometimes
 
composition, application, invertability... these all sound like an arrow
obviously invertability isn't natural to arrows but there's no reason an arrow couldn't be invertible
 
Composition, Identity == Any set of morphisms
application == any category with exponentials (this is currying)
invertability == ??? A subset of functions, just an isomorphism from `Hom(a, b)` to `Hom(b, a)`
 
just like a functor can be implemented that doesn't comply with all the functor laws or that complies with even more laws than functors require, I just mean the arrow interface seems like the right one. At the end of the day I don't see a generalized implementation for what he's talking about, rather you have to define your AST structure and implement the arrow interface yourself over it
(is there an arrow instance implemented for (->) already?)
 
@JimmyHoffa yeah there should be
 
4:03 AM
the reason I immediately thought of applicative functors was just because (->) already implements them, and they give applicability
but he's not going to find an invertible instance for -> in any currently implemented interfaces I don't suspect, so he wants something custom anyway
 
But thte thing is, the applicative interface to application is basically, if you have a -> b -> c, and a -> b, f <$> b is a -> c. Not what you'd expect
He seems to be asking for a generalized version of . and $, which arrow apply more or less gives
 
@jozefg Yeah that's why arrow was my second reach.. like I said, at first I was just thinking common standard instances of (->) which applicative functor is. Now I'm just curious what the arrow instance of -> is
 
Oh my, are arrows representable functors? I think they are
Making an arrow representable means that it's exactly what he wants
 
hey can you explain the free stuff to me, or is it particularly complex?
"free" functors and "free" monads I've heard of but never heard any definition of them, only heard them in passing conversations full of stuff that I hadn't gained a real grasp of yet
 
It's not terrible, basically

data Free f a = Pure a | Free ( f (Free f a))
 
4:11 AM
So the effect is free and transferable with no required binding to the particular f?
because Pure a could be a part of a Free f a, and then get handed off to be used in a Free g a structure?
No... I'm totally missing it probably
 
Kinda? You are basically building a "list" of functor composition, squint and notice that Pure is like [] and Free is like :
 
right
 
Now using this, we can implement a monad
return = Pure
Pure a >>= f = f a -- First monad law is trivial
Free fr >>= f = Free $ fmap (>>= f) fr
 
Ok yeah, so that feels a lot like the list monad
is the idea f acts like a hole so you can reify the a to various types easily? Yeah maybe it's just too late
 
Not quite, basically we're going to use this to build an AST and by construction guarantee it satisfying monad laws
then we get do notation and fun stuff
Finally we write some interpetation function which maps Free SomeFunctor a -> SomeMonad a
hang on, just typing up an example
 
4:32 AM
{-# LANGUAGE DeriveFunctor #-} -- Lazy
import Control.Monad.Free

data Stacky r = Push Int r | Pop (Int -> r)
deriving Functor

type Program a = Free Stacky a

test :: Program Int
test = Free $ Push 1 $ Free (Pop Pure)
Then with a few helpers
pop :: Program Int
pop = liftF (Pop id)

push :: Int -> Program ()
push a = liftF (Push a ())

test :: Program Int
test = do
push 1
a <- pop
return a
And then an interpreter
interpretStack :: Program a -> a
interpretStack = go []
where go _ (Pure a) = a
go xs (Free (Push i r)) = go (i : xs) r
go (x:xs) (Free (Pop f)) = go xs (f x)
</code>
Ick this is disgusting looking
The gist is that we build up a datastructure, a good to honest datastructure in an side effect free way, and then interpret it
I don't like his piece on objects and comonads, but this is nice haskellforall.com/2012/06/…
 
4:58 AM
@jozefg ah so it conveys the behaviour of the interface onto the data structure by mapping the structure to an evaluation definition
 
@JimmyHoffa yep, in a pretty elegant way
 
Ok, now that does make sense why the guy would want a free something the way he's talking about it
because he wants to just take an arbitrary structure and project functional application and composition onto it by way of defining a structure evaluator rather than defining the structure to fit the evaluation rules onto it
 
@JimmyHoffa Yeah, I think that's a much cleaner solution, build up a tree of evaluations and plug in the evaluator
And it won't confuse the hell out of the type checker
 
right
 
Not sure if he'll be happy with it, in which case an arrow is certainly the right move.
Perhaps with an additional idea that
there's a function unArrow :: Arrow a => a b c -> b -> c which makes a b a representable functor
with arr and unArrow as witnesses
 
5:06 AM
Now you've got me thinking about how to define the free maybe functor... should be easy, don't give me any hints. Something to chew on while I'm passing out. Thanks for the explanation! Night!
 
Night!
 
 
3 hours later…
7:47 AM
Hi! I remember once reading an article I can't fing anymore. It was about a very good replacement for simple A/B testing.
The method described was pretty much this: Every option starts with an equal score. You serve one of the options for the user, and raise it's attempt count by one. If the option leads to the desired goal, that option gets the success count increased. These counts provide the success rate for the option. Then when you serve an option, you decide which option to serve based on a random choice wheighed by the success rate of each option. The options with better success rate get served more.
Whis is this type of testing called? And does anyone remember an article describing it?
 
 
4 hours later…
11:28 AM
Carthago canem placito! (phrase courtesy of @JimmyHoffa)
0
A: Feedback request: New top bar and MultiCollider redesign

gnatSubmitted here in order to ensure that involved feature requests (listed below) are included in the list of feedback items. Hot questions stay at the top of the supercollider for too long Above wording is as has been recommended by David Fullerton♦ here. Involved feature requests (listed in ...

 
 
2 hours later…
user41796
1:00 PM
Today's "unanswered question" award winner: (Yesterday's was the Scala question about generic programming)
 
user41796
0
A: Functional/nonfunctional requirements VS design ideas

GlenH7I'm going to rely upon the SWEBOK (Software Engineering Book Of Knowledge) to guide my answer. In the Software Requirements* chapter, we're provided with more formal definitions of the terms needed for your question. Functional requirements describe the functions that the software is to exec...

 
user55340
2:25 PM
@jozefg @JimmyHoffa After reading last nights conversation - I'm certain you guys are just making up words.
 
@MichaelT In Soviet Russia, words make up you!
 
2:44 PM
@MichaelT and well, I make up plenty of words because I don't know what I'm talking about, but I'm pretty sure @jozefg was using proper terminology
 
user55340
In moderate seriousness, I do think that the "big word" problem of haskell may be part of the difficulty for adoption.
 
@MichaelT Nobody disputes that it is, that fact is well known. The problem is once you learn how that stuff all ties together it just makes it easier to talk about the things with the terms, so while it's well known that is hindering adoption and thus there are numerous large good tutorials and instructionals that never use any of that messy terminology specifically to help adoption, there's still a lot of writing with the terminology because like I said, when you get it, it's easier
 
user55340
Its its own jargon - and there's nothing wrong with that. Its just an intimidating amount compared to other languages.
 
Otherwise people would have to talk about "things that can be mapped over" instead of "functors" and "mappable things that hold a function" instead of "applicative" and then well "general composable and executable version of decoratable functional context tying together thing" instead of saying "arrow"
@MichaelT Yeah well, that comes down to the amount different it is from other languages which can't be helped.
Which is the other half of the coin of why adoption is shit. As much as there's plenty of tutorials that teach you to write it just like writing python and make it easy peasy, there's just as many that live in the abstract haskell-land where they do stuff with it that is so far away from what you can do in any other language
but that's kind of the point, you can write it without understanding the higher level stuff, but when you get to the point of using it, you may as well do the things with it which it can do and nothing else can
I do take issue with some of the statements from Crockford in his speech the other day
I enjoyed deriving some monads in javascript when I was working through how that stuff worked, and javascript definitely can do most of what Haskell can do due to the dynamic type system, but his claims that it's as good a way for people to approach monads as any I find wholey untrue just based on what I've seen; the vast majority of people who pick up FP outside of a single assignment-true declarative language, end up writing imperatively in a semi-FP language and not learning declarative
I don't doubt for a moment that Crockford was able to derive and understand all of that stuff from the standpoint of JavaScript, but he's already an FP programmer firmly rooted in LISP, along with being ridiculously intelligent so I think his statements were naive about how well people can pick up declarative approaches in languages that allow non-declarative code
 
user55340
3:01 PM
I'll point to that Higher Order Perl bit...
 
user55340
> Lisp programmers go around making funny noises like ‘cons’ and ‘cooder,’ and they talk about things like the PC loser-ing problem, whatever that is. They believe that Lisp is better than other programming languages, and they say so, which is irritating. But now it is all okay, because now you do not have to listen to the Lisp folks.
 
user55340
> You can listen to me instead. I will make sooth- ing noises about hashes and stashes and globs, and talk about the familiar and comforting soft reference and variable suicide problems.
 
@MichaelT heh yeah true
I guess what you're saying is "functor" "monad" and "homomorphism" sound like angry german to the ears of the imperative programmer
 
user55340
Its more of "there's nothing that we understand to map it to" - the concept may exist somewhere in the language, but there's no link from that word to that concept.
 
user55340
3:29 PM
@gnat had a slight fix on top of the suggestion - he didn't recognize your proclivity to use mouseover links - link #3 was slightly garbled... I think.
 
3:40 PM
@MichaelT For what it's worth, that's how I feel when people talk about some design patterns :P It's just a different vocab. Though, I do yell at some haskellers for scarying new people with big words
 
user55340
@jozefg Oh, don't get me started on the AbstractFactoryBuilderParserSingleton that Java programmers seem to be so enamored with.
 
user55340
I don't know where they got that idea... I think they went to some class where they got some notion that these are like jigsaw pieces / lego bricks and if you put the patterns together in the right way you have a working program.
 
user55340
"oh, you put a singleton in this package, and an abstract factory in that one, and then you use an n-tier architecture and compile it and you're done!"
 
@MichaelT I saw your edit, it makes perfect sense - thanks
 
@MichaelT Yah.. And then I saw the visitor pattern and I just decided to write my OO code in Common Lisp
 
user55340
3:44 PM
Maybe they got some instructor who gave them the pieces (doing a great disservice) and had them just put them together...
 
@MichaelT I love how "n" tier just means "3" tier. Try to break things up in any way whatsoever other than the 3 tier structure beat into people and suddenly they get lost and confused and wonder why you aren't just doing n-tier
 
user55340
Or they're converted ruby / python / perl programmers who just go get the gem / egg / clan module and think that every things already been written and its just a matter of the right import.
 
user55340
@JimmyHoffa Must have been named by a database guy... they count "0, 1, many"
 
I often get annoyed when Python programmers say things like "Python is functional, we have list comprehensions" and then get rid of folds and discourage map and filter..
This isn't strictly related, it just bugs me a lot
 
@MichaelT Isn't this what OO classes teach you in uni? "You import the modules and the objects come and make your program, here's where you search for the objects you need!"
 
3:48 PM
@JimmyHoffa My favorite line from my OO class was "It's very important that every single field has a public getter and setter" I felt a bit of my soul die
 
@jozefg The whole "My language is functional too!" you constantly hear from people who write purely imperative code makes me want to face-stab people.
They refuse to learn a functional language but claim theirs is functional. If you don't know a real functional language, how can you know yours is functional?? The ignorance astounds
 
@JimmyHoffa "It's not functional, it's just cute"
And not horribly inexpressive. I can write OO haskell, doesn't mean Haskell is OO. Incidentally, I don't recommend this.
 
@jozefg Nobody does, as I've said so many times before: When you have the abstractions FP languages give you, even if they have OO facilities in the language too you just don't have any reason to use the OO stuff anymore
It's like riding a bike when you own a ferrari
 
I'm not sure if I just write the wrong programs for OO, compilers just tend to not play nice with object orientation/imperative programming.
 
@jozefg Imperative parsers are the most terrible things ever. Everyone in industry knows parsers are the least pleasant things to write there are, because it's the only way they know to write parsers. (Sadly for some reason they haven't associated that stigma with state machines but rather think state machines are simple and fancy even though parsers and state machines are hand in hand, and both are horrible imperatively)
 
3:54 PM
It's funny cause writing a parser in Prolog is literally my favorite prolog problem.
With some clever hints for rule precedence a grammar basically is a logic program
 
I wrote a declarative parser at work recently because we have a proprietary protocol data feed coming in we need to parse. My boss was very suspectful when I declared I'd love to write the parser for it. I showed it to the team and the declaration was "Well this all looks nice and clean and concise and we can absolutely not allow it because none of us has ever seen anything like this before, but nice job it does seem concise"
To be fair a lot of the kickback was "We can't allow F# because no one else here knows it", but fact is C# just doesn't have the facilities in it's type system to do a nice clean declarative parser
 
"Away with you and your declarative magic!"
 
user55340
@jozefg its a symptom of the "use a framework" where different layers require certain things.
 
user55340
For example, using Stripes framework, if you have ${foo.bar} it will translate this into foo.getBar() and invoke that method.
 
@MichaelT Oh lord..
 
4:00 PM
@MichaelT and using Strips framework if you have ${20} you can get a lapdance
 
user55340
So that requires you have it. And it goes the other way too of the setters when pulling in parameters. You're invoking FooAction with the parameters ?bar=2&qux=3 - it automatically sets up the Action with setBar(2); and setQux(3)
 
Urk, I should go take a midterm now.. Bye all!
 
user55340
@JimmyHoffa Stripes is actually quite slim for a java web framework.
 
@MichaelT Strips isn't always slim, sometimes it's quite unsightly in fact
 
user55340
Get Spring and you're spending more time setting up xml files and annotations than writing java code.
 
user55340
4:02 PM
So its not so much "you must have public getters and setters" but rather "many frameworks require getters and setters and its just assumed that you're going to need them so create them anyways" - yes, it makes the OO sad.
 
@MichaelT I had to live under Spring.NET, Yegge captured the Java approach very well in my mind when he spoke of it like being a construction worker on a big site you have all this dirt(code) to push and pull and move around, so you get these enormous tractors and cranes (frameworks) as your tools which completely misses the point. The point is to not have so goddamn much dirt to move, then you won't need to use fucking cranes and 30' tall back hoes.
But java people view it like construction workers view it: I have this huge project, so I need these huge tools, and I'll put together really big shit and it will all be great
 
user55340
In theory the frameworks have the advantage that one can split up the work more easily and if everyone follows the conventions of the framework, then it all fits together nicely.
 
user55340
In the old days of Java, if you wanted to get something from an object to a web page through jsp, you had to import the object into the jsp (ugly) and then do things like <%= object.toString() %> or whatever you wanted to display.
 
user55340
The frameworks made it so that you could call getXyz() by just doing ${object.xyz} - which was a step forward. It got the java code out of the jsp.
 
user55340
(the old style kept stirring up the layers of MVC - you had some controller code in the view, and such).
 
user55340
4:12 PM
But, in doing that you had to follow their model for naming of things. Ok.... and then they added in code to make jdbc easier... but in doing that you now have that part calling the setters automatically... match the name of the column you get back to the field and it automatically populates the object.
 
@MichaelT The problem is in practice the frameworks are monstrously large and you end up spending all your time thinking about how to configure and organize your implementation of the framework than the actual problem you're trying to solve, and you now longer have a system designed around your problem but rather designed around the technologies you used in the system, and then everytime you have something the technologies can't supply you just add another one because it's the only way
 
user55340
But in doing all of this, you've moved away from "smart" objects to "dumb data objects"
 
to change the system at this point
 
For some reason my code doesn't format correctly in this question programmers.stackexchange.com/questions/213396/…
 
user55340
And other frameworks wanted to get in there... so you've got them borrowing from others conventions.
 
user55340
4:13 PM
And now you've got "every private field must have a getter and setter for some framework to work right that you're not even using"
 
user55340
@Shoe Need to indent it another block to have it work in the list... fixing.
2
 
user55340
Fixed.
 
Ahh, I didn't realize it was picking up my numbers as a list
Thanks for that
 
user55340
No problem... Well formatted code is its own joy...
 
@Shoe Numbers get treated oddly
 
user55340
4:16 PM
(now if only we could get you to use the 1TBS....)
 
user55340
In computer programming, an indent style is a convention governing the indentation of blocks of code to convey the program's structure. This article largely addresses the C programming language and its descendants, but can be (and frequently is) applied to most other programming languages (especially those in the curly bracket family). Indent style is just one aspect of programming style. Indentation is not a requirement of most programming languages, where it is used as secondary notation. Rather, programmers indent to better convey the structure of their programs to human readers. In par...
 
Sometimes I do
 
@MichaelT I've come around to 1TBS after being strongly opposed to it for many years as it makes .NET developers hiss and cry, but now I like it. Though I still will never use it in C# because well it's just too damn non-standard compared to the C# community
 
user55340
(do realize I am completely joking there... but I am a 1TBS advocate)
 
user55340
There's even 1TBS python code...
 
user55340
4:20 PM
def fib(n): # {
     a, b = 0, 1
     while b < n: # {
         print b,
         a, b = b, a+b
     # }
# }
 
When I am doing c# I use microsoft's standard
The default for VS also formats it in this way
 
user55340
@Shoe Consistency is key. Above all else, be consistent (thats really what irks me about much of the SO "fix my code" questions - you can't read it).
 
Haha of course, I agree
Going to lunch, thanks for your help
 
user55340
Anytime.
 
5:25 PM
@gnat @MichaelT can you find that MSO Q posted here not long ago that had a huge <!-- --> comment in the revision history?
 
5:59 PM
@MichaelT Topological space arrows? Yeah those are..
> continuous map smooth paths in spacemodule homotopy
O_o
fair point, the terminology is haltingly cabalistic
 
@JimmyHoffa sure no problem...
Oct 1 at 15:34, by gnat
@MichaelT revisions history, side by side markdown, tells the story better: http://meta.stackoverflow.com/posts/137665/revisions
oh it's gone
you better ask Yannis to copy content from there, he's over 10K at MSO
 
user55340
6:17 PM
@gnat even if he wasn't he would have the "your own deleted answer" access.
 
user55340
6
Q: Why do Git-related questions have hundreds of upvotes?

satuonI've noticed that a lot of Git-related questions and answers have hundreds of upvotes, more than for any other tag. Does anyone have ideas why that is?

 
user55340
Because nobody gits it. — Emrakul 4 hours ago
 
@MichaelT I was trying hard to abstain from commenting with something like "why so many brainless git posts at Programmers are so brainlessly upvoted"...
-1
A: Why is the sudden increase in number of Git submitters on Debian popcon graph in 2010-01?

mmlThere is only one reason. Linus Torvalds. At the time, he had cobbled together git from a pile of shell scripts to more easily manage kernel patches in his email queue. Mat Mackall built Mercurial, and pitched it to Linus, but Linus was happy with his ball of shell scripts, which was working q...

This zero effort, purely opinionated answer lacks explanation and context. Statements made are not explained nor backed up with anything. Overly generalized wording like "There is only one reason. Linus Torvalds" does not even attempts to relate to the actual, specific question asked. As far as I can tell this blatantly violates requirements in the question notice: "provide some explanation and context.... explain why you're recommending it as a solution."gnat Dec 1 '12 at 8:17
that's only most prominent example. but every time I click on git Q/A link I fear getting something like that... and waaay to often my fears come true
 
user55340
git is one of those hot technologies now. Its kind of cryptic in its use and it can do so much. Thus there are lots of questions about it.
 
user55340
I have things like "I want to do XYZ with git" and I search google and find an SO answer that answers it - and it was helpful, so of course I'm going to up vote it if it was good.
 
6:31 PM
@MichaelT my issue is not so much about git but rather about posting / voting standards that seem to be typical for git related posts. It feels like hordes of Britney Spears fans ganging on there twisting and shouting and whatsnot, typically without even attempting to think
 
user20683
My favorite one so far was something "Here's how to use Git as a NoSQL Database".
2
 
user55340
Sam's sprucing up a question again...
 
user55340
7:01 PM
@Sparticus I predict some rep for you this weekend.
 
user55340
 
user55340
Sam fixing up a dev's answer....
 
user55340
Ack, just ran out of close votes...
 
user20683
sighs and goes to review...
 
@WorldEngineer That's hilarious.
 
user55340
7:09 PM
@WorldEngineer Its not there yet because I'm out of close votes...
 
user55340
(ahh, you smacked that one down yourself)
 
user55340
@WorldEngineer thoughts at copying much of the content from to ?
 
user20683
@MichaelT Fold everything into career and shove it into an oven?
 
user20683
:P
 
user55340
7:11 PM
@WorldEngineer Its a ruby person... you can fairly safely ignore what they say.
 
user20683
@MichaelT So if I become a Ruby person (entirely likely) then I'll have ignore myself...that'll be awkward.
 
user20683
I think there's also a difference between a "Ruby Person" and a "Rails Person".
 
user20683
@MichaelT Also Scala is fecking fantastic
 
user20683
it's like Haskell.- (Pain)
 
@WorldEngineer Of course with complimentary code examples in none other than ruby (I think?)
Or is that coffeescript?
 
user20683
7:16 PM
@JimmyHoffa He works for Github
 
user20683
so it could be either
 
user20683
it's not Ruby
 
user20683
I don't see any prefix symbols on the variables
 
Scala seems pretty good but the necessity of type annotations in an FP language annoys the crap out of me because lisp and Haskell both prove they're unnecessary
MonomorphismRestriction aside
 
@MichaelT where? Do I have to do anything?
aha, found it! Sweet!
 
user55340
7:26 PM
@YannisRizos I'd just like to say thank you for getting into those comments on Meta.
 
user20683
@JimmyHoffa They aren't technically required
 
user20683
they are good practice for clarity but they are technically optional
 
user55340
@WorldEngineer GIT, NOSQL, POPULAR, RUBY, AND TALK SEPTEMBER 01, 2011
 
user20683
ah
 
user55340
Ruby uses '@' to show scope. @ is a static field. @@ is a global one.
 
user55340
7:31 PM
Otherwise, you don't see the sigils.
 
user55340
However, things such as:
 
user55340
item = Item.create!(:title => 'Git: the NoSQL database')
 
user55340
Are a dead giveaway to a rubyist.
 
user55340
(the '!' is a convention meaning destructive operation)
 
user20683
@MichaelT the "class" should have been a tip off too
 
user20683
7:32 PM
I should also have remembered that from my short time with Ruby
 
user55340
Well, it could have been any number of OO, curlyless languages...
 
user55340
Though, the end is another giveaway.
 
@WorldEngineer The practice is more about documentation or using types to drive your coding, but largely I'm sure many people don't use them until they want to lock down a piece that they have the way they want. And even then you only need sigs on functions, type hints are never needed if you do that where scala needs a lot more mid-function hints
 
user55340
Scala is certainly a language to learn and use. And its not nearly as hipster as ruby.
 
user20683
@MichaelT It's approximately as hipster as F# or OCaml
 
user20683
7:35 PM
if we want to assign "hipster" values to languages
 
@WorldEngineer don't even compare Scala to F#, Scala is actually a very good language, F# is actually a very bad language.
 
user20683
@JimmyHoffa I was going more on the idea of "ML with Objects"
 
@WorldEngineer The class was my first indicator, and then the : prefix reminded me of the |bla| crap that ruby likes for indicating proc parameters, though @MichaelT I know about the chomp! stuff too so I should have also caught that
 
user55340
@WorldEngineer There's a project... "hipster cred for languages". Java, C# score very low.
 
@WorldEngineer Yeah, but F# is "ML with Stupid"
 
user55340
7:37 PM
Thats it! a matrix! hipster, graybeard, suit...
 
user20683
@MichaelT I think COBOL is probably a 0 on that scale
 
user20683
maybe a 1...maybe
 
user55340
@WorldEngineer Cobol would be high on the 'graybeard' and 'suit' scale.
 
@MichaelT the 'a matric' consumes the 'hipster' leaving the graybeard and suit while returning a computation which 'That's it' consumes which is probably just an identity function, so you're left with a Computation with a graybeard in a suit?
 
user20683
@MichaelT fair enough
 
user55340
7:38 PM
Add in 'academic' for those silly FP types.
 
> This question will be featured at Ars Technica this week! I made some minor copyediting changes to improve question flow.
 
user20683
@JimmyHoffa so Vinton Cerf?
 
@MichaelT I think I'm gonna be on Ars Technica!
 
user20683
@Sparticus join the club :)
 
@WorldEngineer yeah yeah yeah :P I'm still excited though!
 
7:41 PM
I'll never make it. Nobody cares about
25
A: How to create better OO code in a relational database driven application where the database is poorly designed

Jimmy HoffaObject orientation is valuable specifically because these types of scenarios arise, and it gives you tools to reasonably design abstractions that allow you to encapsulate complexity. The real question here is, where do you encapsulate that complexity? So let me step back a moment and speak to w...

or
23
A: What can go wrong if the Liskov substitution principle is violated?

Jimmy HoffaI think it's stated very well in that question which is one of the reasons that was voted so highly. Now when calling Close() on a Task, there is a chance the call will fail if it is a ProjectTask with the started status, when it wouldn't if it was a base Task. Imagine if you will: pub...

 
I think its more of the # of people doing agile vs # of people trying to create object oriented code in a relational database
 
user55340
@Sparticus that you are.
 
All the ars technica stuff is soft gushy careerist/office stuff
@Sparticus Really? You think there's more people doing agile than writing OO code with an RDBMS?
 
user20683
@JimmyHoffa well yes because Math is bad for most people's brains.
 
user55340
7:42 PM
@JimmyHoffa Nope... you've gotta go for the soft stuff.
 
user20683
Math causes my girlfriend to make strange noises.
4
 
Wait. MY NAME WONT BE RIGHT
FUUUUUUUUU
 
@MichaelT Yeah but that stuffs boring and easy "Just don't be a dick, try hard and communicate a lot with your jawbone", soft questions all solved. Done and done.
 
user20683
have a firm handshake, own a halfway decent sportscoat, have table manners, understand when to shut up, understand when not to shut up
 
Its that first part that people have problems with
 
7:44 PM
See here's a good softy question, but even then my answer is more technical than Ars Technica would ever want to see
67
A: How can I make sure that I'm actually learning how to program rather than simply learning the details of a language?

Jimmy HoffaDon't worry about meeting some ridiculous concept of "skill" so commonly heard in such statements like: All programming languages are basically the same Once you pick up one language well you can pick up any other language quickly and easily Languages are just tools, there's some overarching br...

 
user55340
@JimmyHoffa Give it some time to simmer... the current one selected was from July.
 
This is my softest answer of any, hands down.
55
A: My proposed design is usually worse than my colleague's - how do I get better?

Jimmy HoffaI think this is a very positive sign of your skills. It is far more common for people who have difficulty coming up with the 'better' design in a team to be completely incapable of recognizing why another design is better. You have two really great (and surprisingly uncommon) strengths going for...

 
user55340
@Sparticus my former co-worker is still grumpy about being named "a co-worker" in an ars technical article.
 
user20683
@JimmyHoffa.newNickname(Hard Man Hoffa)
 
more like (Grumpy Old Man).setCatchphrase(Get off my monad!)
 
7:46 PM
@MichaelT It's really a shame he went with a rant. He has some very good answers out there, he could have started a quite interesting and potentially helpful discussion if only he had ignored the voices in his head.
 
but other than that, I don't think I have any answers on questions like that. Mine are pretty much all or
 
user55340
@YannisRizos Yep.
 
user55340
The thing is, we aren't the site of a year or two years ago... and trying to make it that is not likely to go well.
 
user20683
mine are largely Java and CS related
 
user20683
which totally makes sense given my education
 
user55340
7:48 PM
It is unfortunate that we get a fairly constant barrage of poor questions for the site... and with the smaller input rate they are more visible.
 
12
Q: Is this really the appropriate response to a "helpful" flag?

amanaP lanaC A nalP A naM AThis is what I just got to a flag that I put on an old dumb question of mine I wrote: Can this please be deleted? It is old and irrelevant. Thank you. And it would have been fine if it was just rejected and I would have need none the wiser... But what I got was worse: I saw helpful, ok co...

^^^ This is how I'll be declining your flags from now on.
 
user20683
There's unfortunately still the impression on SO that we are the "soft questions" site
 
"Marking a flag [declined] was designed to deter serial abusers of the flagging system, but we find that this “slap on the wrist” is being used more often than is beneficial." (September 2011 Newsletter of SE Community Moderator Blog) — gnat 6 hours ago
@gnat You know you're the only one reading that blog, right?
 
user55340
@YannisRizos Me your? or general "you" your?
 
user20683
and there's also the mistake that many make of thinking we aren't associated with SO
 
user20683
7:50 PM
@YannisRizos I occasionally read it
 
user20683
mostly because I get emails on it
 
@MichaelT General.
 
user55340
@YannisRizos Ahh... need to get your 'evil mod' cred back.
 
@WorldEngineer I scanned it once or twice, but everything important in there we've already discussed in TL, sometimes weeks before the post was published. I don't bother with it anymore.
 
user55340
@YannisRizos btw, any clue as to why that question didn't migrate the other night?
 
The migration went through when I tried it, so there wasn't a ban. My guess would be that it didn't get the required migration votes.
Hm... Nope, that's not it, all 5 votes were for migration.
 
user55340
@YannisRizos I cast the 5th vote - I saw them all.
 
user55340
Something to poke one of the diamond devs about?
 
Hm, it could be the tags. (user) Migrations don't go through when there isn't at least one of the tags on the target site.
 
user55340
@YannisRizos That could very well be the issue.
 
user55340
8:04 PM
(hmm... doesn't exist on SO?
 
@MichaelT They likely disambiguated it like they did with ASP, so there's vb6 and vb.net tags
 
You fixed the tags 6 hours before the last close vote, so that's probably not it.
 
I think they did (or wanted to) blacklist asp and make it require either ASP3 or ASP.Net
 
user55340
Nope - no visual basic tag, and no syns.
 
user55340
@JimmyHoffa probably.
 
8:06 PM
Ah, yes, they prefer
 
user55340
Should we do a similar tag thingy so that we don't have that problem again?
 
user20683
hmm
 
(don't make me look at our vb questions, it won't end well)
 
user20683
I'll do it
 
user20683
@YannisRizos also if I should need to learn PHP, what would you recommend so that I don't wind up with bad habits?
 
8:08 PM
@MichaelT Do you want to go through and identify which all questions are VB6 and which VB.NET ? I looked at doing this with ASP here once and quickly realized some were just so "AHH ASP QUESTION I DON'T KNOW WHAT ASP IS MAKE SOMETHING RIGHT GOOD YES!" which can't be identified to any variety of asp other than and gave up on the disambiguation effort
@WorldEngineer Don't pick up bad habits with PHP: Write it all in javascript and just claim it's PHP until people let you use the new Node.JS implementation of PHP. They're PHP developers, they won't know enough to tell if you're making it up or not.
(@YannisRizos still thinks CSS is when he writes style="<%= puts(someCssClassName) %>")
 
user55340
@WorldEngineer "don't start"
 
user55340
and by bad habits do you mean "globals" or "tequila"?
 
@WorldEngineer phptherightway.com and the manual for the basics, SO for everything else. There used to be a site with excellent articles for more advanced stuff, but I just noticed sitepoint bought them, and I'm not sure if it's any good any more.
 
user20683
@YannisRizos based on the book that sitepoint just put out on PHP...I've no ideal either
 
Hi, I'm back
 
user20683
8:14 PM
@MichaelT Globals, SQL injection, poor naming choices
 
user20683
@jozefg Are you back or did you return a universe with you here?
2
 
@WorldEngineer and tequila, I don't need to maintain drunken code
 
I guess a quick look won't hurt (much): sitepoint.com/php/?level=advanced
 
user20683
@jozefg I've never had tequila
 
@WorldEngineer Please turn in your diamond asap.
 
user20683
8:16 PM
@YannisRizos I've had vodka, gin, rum, scotch, bourbon, and ouzo I don't much like the middle three.
 
Personally I'm a fan of apple juice :) Hurray for drinking ages
 
user20683
@jozefg I just kind of assume everyone can drink or will soon.
 
@WorldEngineer With my experiences with American universities this isn't innaccurate..
On a completely separate note, ro-che.info/ccc/17 has kinda described my day
 
user55340
 
user55340
@YannisRizos @WorldEngineer would it be reasonable to add our close reasons to one of the help pages so that people can see specifically what is off topic?
 
8:24 PM
@WorldEngineer the middle 3 are my bread and butter...
 
user20683
@JimmyHoffa to each there own
 
@jozefg My first software job I had to skip the release partys too. It happens.
 
user20683
or I may have just had lousy examples of the three
 
@WorldEngineer They're like sushi; learned flavors.
 
@JimmyHoffa Have you seen CCC? It's Roman's comic and pretty funny
 
8:25 PM
@jozefg ...no? What?
 
@JimmyHoffa ro-che.info/ccc
Closed Cartesian Comic
 
O, iduno if i saw that one or another one...
 
@JimmyHoffa I tried this once actually in 4th grade, similar results
Drat, rep capped again
 
user55340
 
user55340
 
8:45 PM
@MichaelT Thanks
 
@YannisRizos well my MSO badgering likely made yet another guy to read it...
@gnat January/February 2012: "moderators can feel easier about ‘declining’ flags as a learning experience to help users improve their flagging activity." — Michael Mrozek 6 hours ago
 
user20683
@MichaelT @jozefg Thoughts on my answer to that JS from Java question?
 
user55340
Looks reasonable.
 
02:00 - 21:0021:00 - 23:00

« first day (1148 days earlier)      last day (3841 days later) »