Off-topic but does Google Plus offer any way to view a post nearly full-screen, without all the extra margin and white space taking up 2/3rds of the screen? A bit annoying that the post text only takes up about 33% of my available screen real estate, even on the "view single post" URL: http://cl.ly/image/1p1B2o3D262g
When I page-down, I have to scroll back up a few lines because the border is eating too much of the visible screen. :(
Steve Yegge: Notes from the Mystery Machine Bus
81–90 of 186 posts
Re: Steve Yegge: Notes from the Mystery Machine Bus
#82In his section on Tech Corporations, he classifies Apple as "Diagnosis: no idea." Is there a reason nobody speaks publicly about Apple's engineering culture? We hear a lot about the culture at Google, Facebook, Microsoft, and Amazon. But I've never met an Apple engineer. And I've never read any detailed accounts by an insider. Does anybody have any good resources? Or is there a very restrictive confidentiality policy…
That said, I'd characterize Apple is liberal. They put immense pressure on engineers to ship software as soon as possible to "get the new shiny out".
Re: Steve Yegge: Notes from the Mystery Machine Bus
#83In general, when I fall on the liberal side of an argument, I think it is for the reasons he gives (no fear, resist ossification). But when I fall on the conservative side (which happens just as often) it is not because of fear, but because I think that mathematically rigorous abstractions (pure functions, persistent data structures, etc) offer a more powerful way to approach the problem.
I think my attitude toward bugs (which he suggests is the defining issue) is more nuanced than this spectrum allows. Bugs are inevitable, and it's not the end of the world when you have a bug. We need debuggers. But I think that over time, if we are doing anything right, we should be growing a stable core of our codebase that is increasingly flexible and bug-free. I guess maybe this could be considered a centrist view. It is certainly neither liberal nor conservative.
Someone in the thread mentioned pragmatism vs. idealism. I think this is a much more useful distinction. I would definitely consider myself an idealist. But the pragmatic-ideal axis doesn't map to the conservative-liberal axis at all.
Re: Steve Yegge: Notes from the Mystery Machine Bus
#84Re: Steve Yegge: Notes from the Mystery Machine Bus
#85Earlier quoted context omitted.
It might be because of the Scala community, as he feels it is with Clojure.
Tumblr and Twitter don't strike me as a particularly conservative audience. Quite the opposite.
They still have PHP and Rails (respectively) up front. This is "we like to roll out new user-facing features regularly" liberalism.
Re: Steve Yegge: Notes from the Mystery Machine Bus
#86I'm trying to think of what anti-macros Clojure talk by a "key presenter" he might be referring to. I'm only familiar with the talks from Clojure/conj, so the only one that I can think of is Christophe Grand's (not= DSLs macros) talk from 2010[1]. If so, I think his summary mischaracterizes the content of that talk, but it could be another talk he's thinking of. [1] http://blip.tv/clojure/christophe-grand-not-dsl-mac…
And for Yegge to imply that more serious Clojure devs like Christophe are macro averse because they are afraid they might not understand someone else's macro code shows his complete lack of familiarity with Christophe's macro skills and other work of the community.
Taking potshots at things you don't understand and people you don't know (while leaving out the link so others could verify) smells like a FOX-news rhetorical approach to me. Ditto political labeling (though in the programming community the negative tag is "conservative", whilst in politics it is "liberal"). Tag the thing you don't like with the negative label, then rationalize, and spew misinformation. "Clojure's community came pre-populated with highly conservative programmers from the pure-functional world: basically Haskell/ML types": surveys[0][1] say... nope.
He even ignores the bulk of his own criteria in his labeling exercise. Clojure has almost none of the things on his "Conservative Stuff" list except STM (huh, is GC conservative too?) and almost all of the things on his "Liberal Stuff" list. None of his 1-8 conservative points apply to Clojure (and I see nothing wrong with conservative about speed - Common Lisp has always pursued it, and its pursuit always involves risk), and all of his 9 liberal points apply to Clojure.
Clojure devs are liberals that want their programs to work.
If Yegge doesn't like Clojure, fine. But to rationalize like this is weak.
Yawn.
[0] http://cemerick.com/2010/06/07/results-from-the-state-of-clo...
[1] http://cemerick.com/2012/08/06/results-of-the-2012-state-of-...
Re: Steve Yegge: Notes from the Mystery Machine Bus
#87Earlier quoted context omitted.
> I'm conservative because I dislike complexity Except a lot of conservatism as defined here is all about complexity in terms of 'big design up front' methodology and, really, having a big methodology in the first place, along with having a lot of testing and static analysis tools. Ada is a conservative language. C is extremely, red-diaper liberal.
Sure. I think that Yegge has hit on something real, but I don't agree with where he's drawn the lines. Haskell and Lisp developers have more in common with each other than with "best practices" Java developers. A lot of this is about risk assessment. Business people and engineers don't agree on how to define and measure risk. Business people think Java is the low-risk choice, because the risks are hidden. Engineers k…
Like in actual politics the emotion and the response, do not always match up rationally. That's why its called an emotion.
For example, preventive wars do not make one safer. But they sure make you feel like you are safer. Going out there, dealing with potential threats.
Likewise, Java can be very dynamically typed (depending on your perspective), yet feel 'conservative' (stick with what we know). Haskell is very statically typed, yet feel 'progressive' (explore new grounds).
Emotion is not an intentional thing, therefor its application is never rational.
To get back to real politics. If a person is both sane, yet fearfull of his or her security, they would not want a bigger military machiene, they would want a bigger worldwide PR machiene.
I tend to put the two extremes differently though: a liberal fears being wrong, a conservative fears being right. Which is why progressives go out of their way to be right, and conservatives go out of their way to be wrong. (jk)
Re: Steve Yegge: Notes from the Mystery Machine Bus
#88I think I'm a software libertarian. If you like dynamic typing and can write good, legible code in a language like Python or Lisp, do it. If you like static typing, knock yourself out. If you want to use an IDE, go for it. If you want to use emacs, do it. Hell, if you like object-oriented programming, try it out. I think 95% of "object-oriented" programming (as currently practiced) is junk, but the other 5% is legiti…
What conservatives consider good, legible code is very different from what liberals do. From the article:
For instance, it's straightforward to write JavaScript code in a way that eschews reflection, eval, most automatic type casting, prototype inheritance, and other dynamic features. You can write JavaScript that plods along as unadventurously as, say, Pascal. It doesn't have all the static type annotations, but you can replace them with assertions and unit tests and stereotypically stolid code organization.
Re: Steve Yegge: Notes from the Mystery Machine Bus
#89As Yegge mentioned in his post, this is a bit of an oversimplification. As a simple illustration, choosing a statically typed language like Java over Python is certainly a conservative trait. But then choosing Python over Haskell is exactly the same, just with the whole difference translated towards the liberal end of the spectrum. Put another way, it's the political liberals who came up with OSHA (I hope--I'm somewh…
From the wikipedia[1]: "Congress established the agency under the Occupational Safety and Health Act, which President Richard M. Nixon signed into law on December 29, 1970." Nixon[2] also tried to get Universal Health Care for all low-income and employed Americans, but it was blocked by Senator Edward Kennedy and other Democrats. Maybe politics[3] is just the art of getting the state to delegate property rights, even…
Emotions are not intentional, nor do they lead to rational behavior. (by definition). The translation of an emotion into a point-of-view depends purely on the context: it can swing any direction.
A conservative might be against war, because he/she is afraid it will make the world dislike the US more, and hurt his/her security more.
A progressive might be in favor of war, because he/she is afraid that without it, the world is worse off, and the potential for a better world is lost.
And from that perspective, I do consider the stated 'political' dimension a potentially relevant categorization of programmers' mentality.
But without knowing their background, there is no way to predict how they actually feel about specific approaches.
Re: Steve Yegge: Notes from the Mystery Machine Bus
#90Earlier quoted context omitted.
Tumblr and Twitter don't strike me as a particularly conservative audience. Quite the opposite.
I don't think Yegge is arguing anywhere that the language choice you make is tied into your overall corporate software "liberalness" or "conservativeness". The "software liberal" companies he lists - Facebook and Amazon - both make heavy use of C++ (a "moderate-conservative" language to Yegge) and Amazon also uses Java heavily (another "moderate conservative" language.
As usual with Amazon, though, this is an area where it makes more sense to talk in terms of individual teams than the company as a whole. Some teams build almost everything in Ruby and are open to new languages. Others are pure Java shops. Other than Infosec approval, it's really up to teams to decide for themselves.