C# 8: Switch expressions - <AUTHOR> https://alexatnet.com/cs8-switch-statement/ <comment><USER2> More and better examples here [https://blogs.msdn.microsoft.com/dotnet/2019/01/24/do- more-w...](https://blogs.msdn.microsoft.com/dotnet/2019/01/24/do-more-with- patterns-in-c-8-0/)

</comment><comment><USER3> To me, all these IIFE's make a good case for adding a block-as-expression construct. Either take from Scala, where every block evaluates to the last expression executed in that block (and every statement is an expression); or maybe introduce some new syntax ('do { .... }' maybe?) if the prior would be a breaking change.

<comment><USER4> There's a bytecode representation already - you can use it when compiling to IL: [https://docs.microsoft.com/en- us/dotnet/api/system.linq.expr...](https://docs.microsoft.com/en- us/dotnet/api/system.linq.expressions.blockexpression?view=netframework-4.7.2)

What's missing is a way to express an anonymous block expression in C#. I'm not sure that's a gap worth filling, though - if the logic is worth a block, isn't it worth a name?

<comment><USER5> "If" statements and loops already make use of anonymous blocks, and I think serve as ample demonstration that, no, not all blocks are better off named. What's missing is the ability to use those blocks wherever an expression is expected.

</comment></comment></comment><comment><USER6> This might be better titled "C# 8: switch expressions" (edit: it was previously "statement", as the author's post is titled).

Or actually, to bait a few more hn clicks (and provide a fuller description): "Pattern matching in C# 8 with switch expressions"

<comment><USER7> This might be better titled "changing things for the sake of changing things and appealing to the programming language geeks".

The new syntax is not intuitive, not more readable, just a bit more terse.

<comment><USER8> This actually seems to be somewhat of a trend in C# as of late. Ever since they introduced lambdas, really.

While I use them every day, my favorite is still "replacing" String.Format with string literals. Shorter, sure, but less intuitive particularly for people coming from another language. You can do roughly the same thing in PHP with backticks, but most people avoid them for the same reasons.

I'm not sure how I feel about the trend as a whole. As long as I can continue using the old methods as well I suppose I don't have much room to complain, but sometimes it does feel like we're just changing for the sake of change and that's usually a bad indicator.

<comment><USER9> string interpolation isn't simply a wrapper around String.Format(); it also offers compile time checking which solved a real limitation of String.Format() while offering better performance than concatenation.

For example:

         var h = "Hello ";
         var w = "world";
         var output = String.Format("{1} {2}", h, w);
         output = $"{h} {w}";

Would compile fine but throw on the String.Format() line due to the typo.

<comment><USER8> I wasn't necessarily saying it doesn't offer any benefit, more that it's not really a benefit that seems to benefit a lot of people. Between code intelligence tools and actually running the code you write (not even in an actual QA process, but simply executing each line) that just doesn't seem like a big deal to me.

There are also instances where, such as with Console.Write you are now formatting a string in order to pass it into... a method that formats strings. Yes, the same benefit is still provided, but with a fairly obvious decrease in clarity and increase in redundancy.

<comment><USER9> > fairly obvious decrease in clarity

You feel that "{0} {1} {2}" provides better clarity than $"{FirstName} {MiddleInitial} {LastName}"?

</comment></comment></comment></comment></comment></comment><comment><AUTHOR>
        "+" => ((Func<int>)(() => {
            Log("addition");
            return a + b;
        }))(),

This is incredibly ugly. Why couldn't it be "+" => {stuff}

<comment><USER10> That is ugly.

What he's doing is creating an anonymous function which takes no parameters and returns an int. That's what a Func<int> is, and then he is executing that function, that's the () bit after }))

He could write it nicer as:

       "+" => Add(),

Where he defines add as

       int Add() => a + b;

He's just doing too much inline, 99% of C# developers would not write code as he has done there.

Its' the bloggers code style that is the problem here, not the new switch syntax. Although he probably did it to make the example more self contained and terse.

<comment><USER6> I agree with your conclusion, but let's keep the conversation civil.

<comment><USER11> The conversation is quite civil already.

<comment><USER6> Ah, too late to edit/delete my comment. They edited their post, perhaps in response, which is now much more considerate.

</comment></comment></comment></comment></comment><comment><USER12> I am not sure I like the path c# is going down.

For years the language has been trying to evolve from being aesthetic and easy to understand and read.

With the functional implementations and patterns I believe the language is trying to embrace too much.

This is not specific to the swith expression in this context but in general.

You can write C# in too many forms and I don't believe that's really good.

<comment><USER13> > You can write C# in too many forms and I don't believe that's really good.

Why not? And what, exactly, defines "too many"?

<comment><USER14> I know people meme a lot about Go and "not having generics," but I really feel that a lot of the things left out of Go have benefitted it. I've never really been able to jump into a project without a lot of mental overhead. With Go, most code everywhere is written pretty idiomatically, making it easy to approach and read. I've heard similar things about C#, but my experience hasn't been as great.

This is a big problem in the JavaScript world in my opinion. So many different ways to solve common problems that it's difficult to approach. OP might be worried this could be happening to C#.

<comment><USER15> We could go with a language with just if statements, while statements, function calls and "return" and be extremely easy to jump into. :)

While a bit snarky I do think it is one of the fundamental problems with programming language innovation. No matter how smart we are, learning is effortful. And we frequently judge languages not by how productive it is, but by how quickly we can start feeling productive in it. Which often preferences familiar concepts over more powerful concepts.

There is a _very_ long feedback loop in properly evaluating a language. At least 1-2 years. You need not just figure out how to do what you already know in the language, you need to learn the new way to think in the language. And that takes time and solving lots of problems. This is only sped up if the language's concepts are kept very similar to a language you already know.

We are the bottleneck that slows down language improvement. There is no way anyone can convince me that the hodgepodge of Algol derived languages is one of the best ways out there of writing code. But most new languages will be similar because the hurdles of trying to teach people anything else alongside the actual new interesting concepts of your language are too much of a blocker for any reasonable adoption.

</comment></comment></comment></comment><comment><USER16> Java is also getting switch expressions next month (as a preview feature in JDK 12): [https://openjdk.java.net/jeps/325](https://openjdk.java.net/jeps/325)

<comment><USER17> It is exactly the same isn't it?

<comment><USER18> It's not. C#'s switch can pattern match on value _and_ type: [https://blogs.msdn.microsoft.com/dotnet/2019/01/24/do- more-w...](https://blogs.msdn.microsoft.com/dotnet/2019/01/24/do-more-with- patterns-in-c-8-0/)

Java's switch still operates only on String, int, short, byte, char, and their wrapper types: [https://blog.codefx.org/java/switch- expressions/](https://blog.codefx.org/java/switch-expressions/)

</comment></comment></comment><comment><USER19>
        // now you kind of enforced to
        // handle all values, otherwise
        // it will not compile

I fail to see how it will not compile if all values are not handled. C# switch is not traditional pattern matching, because you don't get compile time feedback.

Claiming that is does is disingenuous.

<comment><USER13> This page[1] (which was linked elsewhere in the thread) provides the following info:

> Since an expression needs to either have a value or throw an exception, a > switch expression that reaches the end without a match will throw an > exception. The compiler does a great job of warning you when this may be the > case, but will not force you to end all switch expressions with a catch-all: > you may know better!

I haven't used the feature yet myself, so I can't say it definitively - but it sounds like it does provide compile time feedback while still allowing you to compile.

[1]: [https://blogs.msdn.microsoft.com/dotnet/2019/01/24/do- more-w...](https://blogs.msdn.microsoft.com/dotnet/2019/01/24/do-more-with- patterns-in-c-8-0/)

<comment><USER20> Specifically, it will throw SwitchExpressionException[1]

[1] [https://github.com/dotnet/corefx/issues/33284#issuecomment-4...](https://github.com/dotnet/corefx/issues/33284#issuecomment-448332714)

</comment></comment></comment><comment><USER21> In my opinion, I find the Tuple patterns the most interesting way to use Switch Expressions. But (and maybe I'm stuck in my ways), I'm kind of on the fence in terms of using this. On the one hand, it shortens some code, but on the other, it's more difficult to read than an if statement (in the case of tuples). I guess I'm not completely sold on this yet. I know the big argument in the article was that this is a way to ensure your variable has a value when you go to use it. When I hear things like that, my first reaction is "then write better code if you're running into that problem."

</comment><comment><USER22> This is perhaps the most obvious example yet of what PG described as "taking features from Lisp and gluing them to C". That's not necessarily a bad thing -- this is a great and useful feature, and one I frequently miss when using C-family languages.

I wonder, though, at what point a programming language collapses on itself, from too much syntax. I haven't used C# since the 4.x days, and I recall back then it was already on the verge of being too complex for me to fully understand. Admittedly my personal threshold of complexity is lower than most programmers', but this is a really big language. Do they plan to keep adding syntax indefinitely?

At some point, it's going to have to get eclipsed by something else. The next generation will be as effective a tool, for the kinds of things most people want to make, and not too complex for most people to understand. Perhaps part of that would consist of just using expressions for everything from the start.

<comment><USER23> This is my feeling as well. I suggested that a c# lite or a rethinking of c# would be awesome. I got downvoted to oblivion though. But I do think that there's too much mental capacity used just reading c# if the code really uses all the features of it. I like go lang cause of this, but go is a bit too far on the other side of the spectrum for me.

<comment><USER24> > I like go lang cause of this

I'm a huge fan of C#, but the lack of features makes Go so damned pleasant to read. As an extreme example, the new C# record type really breaks the neurons I have dedicated to the language:

        public struct Pair(object First, object Second);

As soon as I see parenthesis, it's a method. I want record types, but that syntax is foreign. I wish Anders would spend a few months back on the C# team, he has a great knack for keeping things as consistent and minimal as possible.

<comment><USER25>
        public struct Pair(object First, object Second);

Scala, Kotlin, Rust among others use the same or similar syntax.

</comment></comment></comment></comment><comment><USER26> Though I'm sad that a lot of developers dislike scala, I'm certainly glad to see some of it's* good parts being incorporated into current and new languages: Pattern matching to various degrees in Kotlin, now C#, and soon Java 12.

* I acknowledge my ignorance in thinking that scala was the first one to the table with this.

<comment><USER27> If you are curious about where it came from look into Caml Light, ML and Miranda.

</comment></comment><comment><USER28> I'm not sure what this accomplishes over a normal ugly switch.

<comment><USER29> The new switch expression is to the old switch statement what the ?: operator is to the if/else statement.

Sometimes you want to provide one of two different values based on a condition. If you use if/else, then each statement body has to contain either an assignment (if the value is to be used later in the same function), or a return (if the value is to be immediately returned from the enclosing function). It is often more clear and concise to use a ?: expression at the site where the value is to be used.

Now consider the case where you need to choose among three or more different values. You can use chained if/else statements, which have the same drawback of needing to contain either assignments or returns. Or you can use chained ?: expressions, but there's really no good way to format this in a way that remains clean and easy to understand.

The new switch expression provides a cleaner alternative to chained ?: expressions.

</comment></comment><comment><USER30> "The new switch expression is quite simple. Anyone familiar with the switch statement can say what the following code is doing"

Uhmmmm....I'm a professional C++ programmer who uses switch statements quite a lot and no, I couldn't instinctively tell what it was doing straight away. Am I being dumb?

<comment><USER31> This is clearly referring to C# switch statements. Not that they are very different from switch statements in most languages anyway.

</comment></comment><comment><USER32> This makes sense together with algebraic data types, but I'm not sure if that's implemented.

<comment><USER33> They're saving ADTs for 9.0, at which point they'll beat their chests and loudly proclaim them to be the Best Thing Ever of All Time.

<comment><USER32> It's OK, it's good direction, so I won't complain.

<comment><USER33> I wouldn't hate it. Especially since my day job has me doing a bunch of C#, anyway.</comment></comment></comment></comment>


Ask HN: How can I make money out of forensics? - <AUTHOR> Hello, I am a person who is currently working in the cyber security field in an entry position, and I am interested in earning some side-money.
I know that for red-teamers bug bounty is a viable solution, but I do not have the appropriate knowledge for being a bounty hunter, nor do I wish to be one.
I have knowledge instead in windows and linux forensics, and I am looking for a way to offer my knowledge so that I can get payed for it. Not as a full time job.
Also, if you have any suggestions for other "blue-team" jobs that require skills not mentioned here would be appreciated. <comment><USER2> Let a handful of lawyers that work in cases that overlap your expertise know about what you can offer them. Once you have a successful gig under your belt, further gigs are easier since lawyers are themselves a niche "market" and prefer working with people who are experienced and knowledgeable (and therefore vetted) about working with other lawyers.

</comment><comment><USER3> Consulting seems like the most obvious candidate. You could also sell your knowledge as an online course or book.

<comment><AUTHOR> Can you please give me more information about consulting? How do I get started into that?</comment></comment>


Practical memory safety for C (2011) [pdf] - <AUTHOR> https://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-798.pdf

<comment><USER2> I didn't have this one and it covers a lot of ground. Thanks for the submission.

<comment><USER3> I wouldn't mind seeing other ones you have on the subject.

<comment><USER2> Unfortunately, I think I lost a bunch of those. Too much stuff to track. I did dig up these I found over past year or so.

Complete translation of unsafe native code to safe bytecode 2004 Alliet and Megacz [http://www.megacz.com/research/papers/nestedvm.ivme04.pdf](http://www.megacz.com/research/papers/nestedvm.ivme04.pdf)

The memory pool system - thirty person-years of memory management development goes open source Brooksby and Barnes [http://www.ravenbrook.com/project/mps/doc/2002-01-30/ismm200...](http://www.ravenbrook.com/project/mps/doc/2002-01-30/ismm2002-paper/ismm2002-a4.pdf)

Cyclone Programming Language [https://en.wikipedia.org/wiki/Cyclone_%28programming_languag...](https://en.wikipedia.org/wiki/Cyclone_%28programming_language%29)

CCured - type-safe retrofitting of legacy code [http://www.cs.berkeley.edu/~necula/Papers/ccured_popl02.pdf](http://www.cs.berkeley.edu/~necula/Papers/ccured_popl02.pdf)

SoftBound - highly compatible and complete spatial memory safety for C [http://www.cis.upenn.edu/acg/papers/pldi09_softbound.pdf](http://www.cis.upenn.edu/acg/papers/pldi09_softbound.pdf)

Watchdog - hardware for safe and secure manual memory management & full mem safety [http://www.cs.rutgers.edu/~santosh.nagarakatte/papers/isca12...](http://www.cs.rutgers.edu/~santosh.nagarakatte/papers/isca12_watchdog.pdf)

SAFEcode - enforcing alias analysis for weakly typed languages [http://llvm.org/pubs/2006-05-12-PLDI- SAFECode.pdf](http://llvm.org/pubs/2006-05-12-PLDI-SAFECode.pdf)

Architectural support for a memory-safe C abstract machine [http://www.cl.cam.ac.uk/~dc552/papers/asplos15-memory- safe-c...](http://www.cl.cam.ac.uk/~dc552/papers/asplos15-memory-safe-c.pdf)

Those are the one's C focused. Much of my collection is about non-C languages given it's inherently hard to protect or prove correct. Most good finds over past year or so are hardware enhancement to improve safety/security. Also, the SCOOP memory model & associated research papers (Google them) are smashing concurrency problems to pieces. Worth porting over to C if possible. Then SVA- OS for hardware interface. CompCert modifications for compiler. Maybe some linker work. Big picture mostly done at that point. :)

<comment><USER3> I appreciate you digging those up. Thanks.

<comment><USER2> You're welcome. :)</comment></comment></comment></comment></comment>


"Oh Snap" Intern - <AUTHOR> http://bump.theresumator.com/apply/tYmN6X/Oh-Snap-Intern.html

<comment><USER2> If I was in college and in that area, I'd take that job in a second, especially if I was a non-technical guy with technical knowledge.

Yes, the position recommends a CS degree, but if you're a HN browser non- technical person, I think you'd be safe.

Awesome.</comment>


Tracelytics: Google Dapper for the Rest of Us - <AUTHOR> http://www.tracelytics.com/ <comment><USER2> I found the website interesting, but I didn't see any pricing information (apologies if I missed it). Without pricing information, I don't know if it makes sense to fill out the registration form to try it out.

I'd suggest making pricing prominent, especially since folks will compare you to New Relic anyway. Are you "New Relic, but with more features, that costs 10x more" or "New Relic, but with fewer features, that costs half as much" or something else?

<comment><USER3> Definitely missing the pricing information. I'm looking to bake in analytics in a new app that I'm working on…this looks good, but I can't even take the time to try it unless I know it's going to be cost-effective.

</comment></comment><comment><USER4> We are an early customer of Tracelytics. We are also a happy New Relic customer. They are both great tools and not necessarily an "either or" decision. New Relic gives great info about what is slow from a single app perspective...being able to trace down to the layer where the issue is.

Tracelytics, on the other hand, tracks across applications and down to the individual machine serving each part of the request. This means that I can track each individual request through multiple applications/services as the request traverses different physical machines.

This has become important as our infrastructure has grown to the point where we might have 20-30 machines in a particular layer. When an app server, or network interface, or something else unforeseen goes wonky, it is extremely challenging to determine specifically what is causing the problem and where it is. With Tracelyitics, if I go into my dashboard and see that the 500 errors are all coming from a single physical server, I can take that machine out of the loop, remove the problem from the production environment, and then troubleshoot the bad box.

</comment><comment><USER5> I've had good luck with New Relic* although on first glance I'm not sure if it offers as comprehensive a monitoring service as this system.

* <http://newrelic.com/features/performance-analytics>

<comment><USER6> (Disclaimer: I'm one of the engineers at Tracelytics)

Tracelytics has two big features that New Relic doesn't have:

\- Support for service oriented architectures. We'll show you what called what, and how the caller affects the callee's performance.

\- More flexible filtering throughout the app. We let you filter on URLs, controllers/actions, custom-defined apps, even memcache keys or SQL queries, and carry these filters around with you go from page to page. It really helps isolate a problem with, for instance, a memcache call that only originates from one URL.

Now, obviously I'm biased, but I think that these two can make a big difference, especially when you're trying to track down a performance problem for the first time.

<comment><USER7> How exactly can you tell exact controllers/actions in the code? Do we need to include some custom code in our PHP (in this case) code for that to work? We use NewRelic right now, and all that the "code performance" part of it shows is index.php, which is the dispatcher of our framework. Obviously, not very helpful.

P.S. I posted a related question on Quora recently, maybe you'd like to weight in: [http://www.quora.com/How-is-Tracelytics-better-than-New- Reli...](http://www.quora.com/How-is-Tracelytics-better-than-New-Relic)

<comment><USER6> In the frameworks we instrument, we grab that information for you at the appropriate point.

In the case of vanilla PHP, the concept of controller and action is less well- defined, so we provide a function that you can use to log controller/action information you have in whatever routing class/function/layer you have.

</comment></comment></comment></comment><comment><USER8> The screenshots and narrative don't provide nearly enough information to warrant a registration. There's not even a price-tag, will this cost $10 a month or $1000? How does it hook into my infrastructure, do you provide plugins (for which platforms?), is it a daemon, kernel modules, SNMP?

You should really provide a live-demo or at least a screencast so potential buyers can get a remote idea of what they're looking at here.

<comment><USER6> In response to your second question, we provides two things:

\- A set of add-on packages in the format of choice for the component we're instrumenting -- Ruby gems, Apache modules, etc. Full support list is here: <http://www.tracelytics.com/features/#!/supported-platforms>

\- A daemon that runs on each machine that is tracing, which collects the partial traces and ships them back to our servers.

We're working on a more complete try-before-you-install experience. If you'd like, shoot me an email (my username at traceltyics) and I'll keep you updated.

</comment></comment><comment><USER9> Best of luck guys!

(I briefly lived with Spiros, and once got sucked punched outside of Chris's house.)

</comment><comment><USER10> Is there an API ? We would want to import this information into our own system as we wouldn't want to use multiple systems; same for our clients.

<comment><AUTHOR> Thanks for the question. At the moment we don't expose an API to our customers though it is in the works. We've definitely heard this request from enough people to make it real.

</comment></comment><comment><USER11> Looks nifty. FYI- Your website is kinda goofy on an iPad. Your divs were moving all over the place. (safari, iOS5, iPad 1)

Good luck.

<comment><USER12> Sooooo tiny on an iPad. Looks like a postage stamp when it first comes up. You have to zoom-in to do anything.

</comment></comment><comment><USER13> An open source piece of software to do this would be greatly appreciated.

Does anything like this exist?

<comment><USER14> Both Dapper and Tracelytics borrow ideas from the X-Trace project, which has a bit of source available, though not much.

<http://x-trace.net/wiki/doku.php>

<comment><USER15> My masters' thesis involves X-Trace, along with pieces for tracing common pieces of the web stack. I'm not ready to open-source it yet, but it's a definite possibility. I've published a preview of it at ICPE 2011, [http://dl.acm.org/citation.cfm?id=1958746.1958783&coll=D...](http://dl.acm.org/citation.cfm?id=1958746.1958783&coll=DL&dl=GUIDE&CFID=67091461&CFTOKEN=53739747)

<comment><USER13> If you do decide to open source it, you can be sure it will be appreciated.

You can also use it as a resume.

</comment></comment></comment></comment><comment><USER16> How is it like Dapper when it doesn't support Java? :)</comment>


Will There Ever Be Another Scientific Genius? - <AUTHOR> http://www.redorbit.com/news/science/1112776401/genius-may-become-a-thing-of-the-past-020413/

<comment><USER2> > There may never be another scientific genius on the level of Einstein, > Newton, Darwin or Copernicus, one prominent US psychology professor claims > in a recently published article.

If psychology were a science, I might take this claim more seriously.

> "When was the last time that someone forced us to rewrite the textbooks in > some domain? Or even create an entirely new domain from scratch? Can you > think of anybody since DNA?"

DNA dates back to 1953. Since then people have invented the laser, the integrated circuit, modern computing, spaceflight, robotics, and have completely overhauled physics at the most complex and creative level.

Because of advances in mathematics and physical theory, we now know that most of our earlier assumptions about the universe were wrong -- we only understand 4% of the universe's mass-energy, which leaves a huge playground for genius, and there are plenty of very smart people trying to craft theories to match the new observations.

The problem is not a shortage of very smart people, the problem is that most modern science is _applied_. The resources available for pure research -- the kind of research that produces entirely new fields of knowledge -- is much smaller as a percentage of total science spending than it was in the past.

There is every indication that the probability for the appearance of a very bright person is either unchanged, or greater than the past. As to whether society can identify and exploit such intellectual potential is another question.

But one thing is certain -- psychologists will continue to get it wrong, in the most basic ways.

<comment><USER3> _> If psychology were a science, I might take this claim more seriously._

The problem is not that psychology is not a science. The problem is that psychology has not had its Einstein yet.

Well, actually it has: Marvin Minsky and his Society of Mind. Unfortunately, not enough other psychologists have listened to him. Yet.

<comment><USER2> > The problem is not that psychology is not a science. The problem is that > psychology has not had its Einstein yet.

Not really. Remember that psychology's topic is the mind, not the brain (the latter is the province of neuroscience). Because the mind isn't a physical thing, it's not open to empirical science. This is why psychologists differ in diverse and fundamental ways -- there's no way to resolve disputes using objective evidence on which different observers can agree (the essence of experimental science).

When a doctor wants to identify and treat a disease, she takes micrographs and DNA sequences, locates a treatment that has been proven to work, then exhaustively validates treatments in clinical trials -- all before declaring that a new disease has been identified and a meaningful treatment exists.

When a psychologist wants to identify a disease, he gets together with other like-minded psychologists and _they vote_. It was not by clinical trials that grief at the passing of a loved one, and childhood tantrums, were recognized as diseases and entered into the forthcoming DSM-V, it was by secret votes.

Asperger Syndrome was added to DSM-IV by voting, not by science, and it is being removed from DSM-V by (now-secret) votes after much public controversy over whether it's a disease at all. Homosexuality was added to an earlier DSM by votes, and removed later by votes -- no science was involved, but public opinion certainly played a part in both decisions.

These examples show that psychology is more political than it is scientific. When a disease is entered into psychology's "bible", it is only after psychologists decide the public wants it that way. And the reverse -- when a disease is taken out of the DSM, it's because of public disapproval, not science or clinical trials.

For these reasons we're witnessing a gradual move away from psychology toward neuroscience, where objective evidence can be acquired instead of the opinions of psychologists. The present director of the NIMH agrees with this view and is advocating it, recently saying, "In most areas of medicine, doctors have historically tried to glean something about the underlying cause of a patient's illness before figuring out a treatment that addresses the source of the problem. When it came to mental or behavioral disorders in the past, however, no physical cause was detectable so the problem was long assumed by doctors to be solely "mental," and psychological therapies followed suit. Today scientific approaches based on modern biology, _neuroscience and genomics are replacing nearly a century of purely psychological theories_ , yielding new approaches to the treatment of mental illnesses."

Source: [http://www.scientificamerican.com/article.cfm?id=faulty- circ...](http://www.scientificamerican.com/article.cfm?id=faulty-circuits)

More here: <http://arachnoid.com/trouble_with_psychology>

<comment><USER3> Much of clinical medicine is not done the way that you claim. E.g., when a surgeon wants to try out a new surgical technique, it doesn't go through clinical trials, etc. He just gets approval from the chief surgeon (or maybe not), and does it. Maybe someday, if the technique becomes popular enough, a statistical study is done to scientifically determine if the technique is as effective as the surgeons believe it to be. Another example is that plenty of drugs are prescribed off-label. Often the off-label prescriptions completely dwarf the on-label ones.

And your description of psychology does not apply at all to Cognitive Psychology. Minsky, for instance, is a Cognitive Psychology theorist, though he is outside of the mainstream of the field.

Neuroscience and Cognitive Psychology are the same department at MIT. This does not indicate a move away from Psychology, however. It indicates a commitment to pursuing Psychology more scientifically than it has sometimes been practiced. But Cognitive Psychology has been practiced in a scientific manner for at least 50 years now.

The Behaviorists also pursued Psychology scientifically. Their theory was just wrong in many respects, and has been proven hopelessly over-simplified as an overarching theory of the mind. (I.e., they weren't particularly _good_ scientists.) On the other hand, Behaviorism is still useful for some things. E.g., training your dog to perform tricks.

"Purely psychological" causes of serious mental illness such as major depression and schizophrenia have not been the mainstream of Psychological belief since I was in junior high, and I was in junior high a long time ago.

As to not being able to study the mind scientifically, that is patently false. The mind is a computer program running on the hardware of the brain, and just as any computer program can be reverse engineered scientifically, so can the human mind. Neuroscientists do "white box" reverse engineering and cognitive psychologists do "black box" reverse engineering. Both are productive approaches, and the two fields are in constant communication with each other. That's why, for instance, they are in the same department at MIT.

<comment><USER2> > Much of clinical medicine is not done the way that you claim.

It was only a comparison, not an absolute claim, and regardless of how sloppy medical research gets, its practitioners can be called out on the carpet if they violate scientific standards. There's no similar behavioral standard in psychology, where absolutely anything goes -- in Recovered Memory Therapy, for example, psychologists persuaded clients that their fantasies were recollections of real, suppressed events, and many innocent people were charged with imaginary crimes before the public and legal outcry forced psychologists to reconsider their own fantasies.

The difference? Practices like Recovered Memory Therapy are the norm in psychology, and even though many such things been debunked, psychologists are free to practice them if they want. The reason is that psychological ideas are almost never proven to be bunk -- practices tend to be abandoned because of public skepticism rather then scientific study.

> As to not being able to study the mind scientifically, that is patently > false.

Okay, fine. Post a link to a picture of PTSD. Or Asperger Syndrome. Or any of the other popular mental illnesses. When you do, I promise to send you a picture of cancer, or the structures responsible for Alzheimer's, or an electron micrograph of common cold viruses.

We can take a picture of common cold viruses, but we can't offer a cure. The difference between the common cold and PTSD is that, even though we know what causes it, doctors freely acknowledge that we are unable to offer a treatment for the common cold. As to PTSD, no on knows what causes it, a sufficiently prepared person can pretend to be suffering from it (or the reverse), and there is no clinically validated treatment. But this doesn't prevent psychologists from offering treatments that have not been vetted by controlled clinical trials.

> The mind is a computer program running on the hardware of the brain, and > just as any computer program can be reverse engineered scientifically, so > can the human mind.

Nonsense. Absolute nonsense. We have no idea how the brain produces the results it does. We can't imitate it, describe it in a scientific way, or predict what it will do next. If what you said were true, experimental psychologists would be able to tell clinical psychologists what they can and cannot do, based on solid science. But this is a fantasy with no connection to reality.

> ... On the other hand, Behaviorism is still useful for some things. E.g., > training your dog to perform tricks.

Yes, but that's not an explanation, it's a description. Descriptions aren't enough for science. I could say, "there are points of light in the night sky", but that's not science, it's accounting. If I dare to offer an explanation -- "those points of light are distant suns like our own" -- I have crossed the threshold of science, because my explanation can be tested and possibly falsified.

Psychologists describe, they don't try to explain, and they don't craft testable theories. This is why there's no theoretical core that defines psychology (and on which different psychologists agree), and that could control the behavior of psychological practitioners.

> Neuroscience and Cognitive Psychology are the same department at MIT. This > does not indicate a move away from Psychology, however.

Wake up and smell the coffee -- psychology is in the process of being abandoned as a serious approach to brain studies, gradually replaced by neuroscience and other quantitative approaches. Just look around with an open mind.

In the final report at the end of the Stapel Affair:

[http://news.sciencemag.org/scienceinsider/2012/11/final- repo...](http://news.sciencemag.org/scienceinsider/2012/11/final-report- stapel-affair-point.html)

The conclusion was "... three investigative panels today collectively find fault with the field itself. They paint an image of a "sloppy" research culture in which some scientists don't understand the essentials of statistics, journal-selected article reviewers encourage researchers to leave unwelcome data out of their papers, and even the most prestigious journals print results that are obviously too good to be true.

The commissions—one for each of the universities where Stapel has worked—concluded that _"from the bottom to the top there was a general neglect of fundamental scientific standards and methodological requirements."_ That climate made it possible for Stapel's fraud to go undetected for many years, the report says."

Now think -- how do so many incompetents get away with so much for so long? The answer is that _psychology is not a science_.

<comment><USER3> _> its practitioners can be called out on the carpet if they violate scientific standards._

Says who? Doctors routinely prescribe drugs off-label. No one calls them out on it, unless they are doing something particularly dangerous.

As to Recovered Memory Therapy: This has been reviled by cognitive psychologist for decades as the worst sort of pseudoscience. Apparently you don't know what cognitive psychology is, and you're not interested in learning.

Nor does cognitive psychology particularly study mental illness, except for brain damage disorders, because (1) such disorders often are very strange, such as hemispatial neglect, and consequently extremely interesting, and (2) such disorders provide keen insights into what the damaged area of the brain is responsible for.

And cognitive psychologist certainly don't treat mental illness. Cognitive psychology is pure research, and most of the experiments are done completely objectively. E.g., flash a word on a screen for a brief moment, then display a yes or no question on the screen, then measure how long it takes the subject to respond to the question. Analyze the data statistically.

Here's an example result from cognitive psychology: Two groups were shown a collection of faces, and then a month later given a test on which faces they had been shown the prior month. The first group was asked to memorize the faces and were told that they would be quizzed on the faces in a few weeks. The second group was not told that they would be quizzed later. Instead they were just instructed to rate on a scale of 1-10 how likable each face was.

The group that was given the surprise quiz the following month scored much better than the group who knew that they were going to be quizzed. And yes, cognitive psychology does aim to provide an explanation for this.

Cognitive psychology is interested in mnemonics in general because it gives us evidence about how the brain works, can be studied quantitatively, and is also quite useful for education.

 _> Nonsense. Absolute nonsense_

Okay, you go to the Department of Brain and Cognitive Science at MIT and tell them that they are all quacks. But if you ask me, it's you who are the quack, not they.

As for us "having no idea how the brain works", we certainly know _something_ about how it works. We don't know enough about it yet to give much direction to clinical psychologists at the moment, except that there are mnemonic techniques and the like that cognitive psychologists have given to those who treat people with certain kinds of brain damage. Clearly our understanding of the human mind scientifically is in its infancy.

Re Behaviorism, the Behaviorist did have explanations. They just weren't very good explanations. For them the explanation of the mind is that it is nothing but a large collection of simple learned responses to external stimuli. But your requirement that science must provide explanation is not correct. That's certainly desirable, but if a theory makes accurate predictions and is useful, it's still a scientific theory, explanation or not. Not everything can be explained. Newton's theories didn't explain what mass is or why momentum is conserved. It just told us how to measure mass and noticed that certain conservation principles always applied.

As to having an open mind, you apparently know nothing at all about cognitive psychology. Please follow your own advice.

<comment><USER2> > Okay, you go to the Department of Brain and Cognitive Science at MIT and > tell them that they are all quacks.

Why would I do that? They study the brain, not the mind -- they're neuroscientists, not psychologists.

> As for us "having no idea how the brain works", we certainly know something > about how it works.

Yes, and that is why the reliable core of tested psychological theory prevented the Recovered Memory Therapy fiasco of the 1990s, prevented Facilitated Communications from ever getting off the ground, and prevented the introduction of Asperger Syndrome into psychological clinics, only to be removed later after its dubious standing became obvious to everyone. But ... that's not what happened. There is no reliable core of tested theory in psychology, as a result of which there are no constraints on what clinical psychologists can say or do. This is not true in any other field that the public believes is scientific.

> We don't know enough about it yet to give much direction to clinical > psychologists at the moment ...

Yes, and when psychology can do that, it will finally have the right to call itself a science. But it's more likely that psychology will be replaced by neuroscience, a process that is already underway.

> But your requirement that science must provide explanation is not correct.

On the contrary, that is a basic requirement for science. If I offer a description, someone else can offer a different description and there's no basis for choosing between them, as with the Ptolemaic and Copernican views of the heavens. But if I offer a testable explanation (orbits must conserve energy) then one of the prior descriptions must be abandoned. That is how one identifies science.

> you apparently know nothing at all about cognitive psychology.

That's your argument? If I am called to serve on a jury in a murder trial, do I have to be a murderer to qualify? No, all I need to do is be competent to evaluate evidence.

The same rules apply here. All one need do is read the psychological literature and look for the classic identifiers of science to see that _psychology is not a functioning science_.

<comment><USER3> _> Why would I do that? They study the brain, not the mind -- they're neuroscientists, not psychologists._

They are not just neuroscientists and they _do_ study the mind. You might have looked at the first sentence on the department's website:

"MIT's Department of Brain and Cognitive Sciences stands at the nexus of neuroscience, biology and _psychology_."

Or looked at the first sentence for the department in the MIT course catalog:

"The study of mind, brain, and behavior has grown in recent years with unprecedented speed."

In fact, You can get an undergraduate degree from this department taking only a single neuroscience course and all the rest being cognitive psychology and cognitive science classes. Furthermore, the department offers a minor in psychology, but not in neuroscience.

And, for your edification, here is the online material for the course Cognitive Processes, which is one of MIT's definitive classes in cognitive psychology:

[http://ocw.mit.edu/courses/brain-and-cognitive- sciences/9-65...](http://ocw.mit.edu/courses/brain-and-cognitive- sciences/9-65-cognitive-processes-spring-2004/lecture-notes/)

I took this class as an undergraduate, and it is a great class. The famous childhood development psychology professor, Susan Carey, taught this class when I took it.

Arguing with you seems fruitless: You just assert things that are patently false without bothering to do the most basic of research or even just listening to what has been said to you. You might even just consider the name of the department: "cognitive" refers to the mind, not the brain, and "cognitive science" is a synonym for "cognitive psychology". (Though when using the term "cognitive science", the study is a bit broader, adding in cross-disciplinary research from artificial intelligence and philosophy of mind. MIT is big on cross-disciplinary research.)

How do I know this? Well, I might have just spent a few minutes looking things it up before spouting off, but I also have a degree in cognitive science from MIT.

 _> Yes, and that is why the reliable core of tested psychological theory prevented the Recovered Memory Therapy fiasco of the 1990s, prevented Facilitated Communications from ever getting off the ground_

There's no _one_ psychology. Have you studied any history of science? Have you read Kuhn? Throughout all of the history of science there have been divisions in scientific fields and "paradigm shifts". As Kuhn pointed out, the old generation has to literally die off before the new paradigm in a field can become the new orthodoxy. Until that happens, many scientists in scientific fields will cling desperately to their already disproven theories. Just look at Einstein, for instance. Why didn't he win a Noble Prize for Relativity? Because there were many physicists who did not yet accept Relativity, even long past the point in time when it was irrefutable.

Enough time has not passed for cognitive psychology to become the orthodoxy of psychology, but some day it will be. Cognitive psychology is not going to be "replaced" by neuroscience, but it will be informed by it. And vice versa. The two fields have always informed each other.

Also, unfortunately, our understanding of the human mind scientifically is not yet strong enough to offer a whole lot to clinical psychologists, so the establishment of cognitive psychology as the new orthodoxy through all of psychology will no doubt be delayed by the needs of clinical psychologists to do their jobs, rather than just telling people with mental illness to go home and chill for the next 50 years, until we understand the human mind and human brain better.

As for "explanation", you completely ignored what I said. If you continue this, there's little point in having a discussion with you. There's no discussion if someone just talks and does not listen. I'll repeat this one more time, however: Physics has not _explained_ why conservation of energy is true. It merely has noted this fact, and has asserted that it is the case based on empirical induction.

Other things, of course, are explained in terms of conservation of energy, but conservation of energy has not been explained. The same thing was true for Behaviorism. It didn't explain why the mind was putatively nothing but a large collection of simple learned responses to external stimuli. That was its main premise, which was a hypothesis based on scientific observation, etc. But Behaviorism certainly _attempted_ to explain all the rest of psychology in terms of this premise. And it's a universal principle of rational thought, that once you have identified laws and/or principals, you can use these laws and principles to explain other things, even if you have no explanation for the laws themselves.

In any case, Behaviorism's problem was that their model was wrong, and so the explanations failed to pan out, except in certain constrained situations, like training animals. Of course now we know that even those explanations are over- simplified, but they are explanations, nonetheless. In any non-fundamental science, however, comprehensible explanations are likely to be over- simplified. The human mind can only grasp so much complexity and many natural phenomena are hugely complex.

<comment><USER2> > "MIT's Department of Brain and Cognitive Sciences stands at the nexus of > neuroscience, biology and psychology."

There is no such nexus. The brain can be studied scientifically, the mind cannot be. This would be like creating a new cosmology department at a university that stands at the nexus of astronomy and astrology.

> Also, unfortunately, our understanding of the human mind scientifically is > not yet strong enough to offer a whole lot to clinical psychologists ...

If this were true in medicine, doctors would have to stop offering treatments. But the absence of science has had no effect on psychologists, who continue to offer any treatment that comes into their heads, including complete frauds like Recovered Memory Therapy.

If doctors offered the kinds of treatments that psychologists offer, on the basis they offer them, they would be arrested. The reason? That could only happen if doctors ignored the copious science that informs the medical field.

It's not credible to say that psychology is (a) a science but (b) has nothing to offer clinicians. One, or the other. Not both. If psychology wants to be regarded as a science, let them craft testable theories that define the field, as every legitimate science has done. Such theories would place psychology on a par with real sciences, each of which is defined by central, testable, falsifiable theories -- physics has the Standard Model, Biology has genetics and evolution, geology has chemistry, physics and plate tectonics. Each of these theories is a clear statement that unites its field. Each of them is testable and falsifiable, and all of them inform practice (engineering for physics, medicine for biology as two examples).

Doctors cannot offer treatments that aren't vetted by research. The reason? Medicine is guided by science.

Psychologists _can and do_ offer treatments that aren't vetted by research. The reason? Psychology is _not_ guided by science.

Hos difficult is that? Want to change psychology's present status as a pseudoscience? As a first step, expel clinical psychology from the field. As a second step, forbid any treatments not vetted by scientific research. I won't hold my breath for these steps to be taken by psychologists, but they certainly, eventually will be taken by others.

> Physics has not explained why conservation of energy is true.

Conservation of energy _is_ the explanation. This theoretical idea unites most of everyday mechanics and astrodynamics. It's disingenuous to claim that the conservation idea isn't an explanation, because of all the everyday physics that it _explains_ \-- planetary orbits, nuclear physics, and many more. Need I add that there is nothing remotely like it in psychology for depth and comprehensiveness.

The idea of scientific theories is they should explain as much as possible with the fewest ideas. This is why physics has the scientific reputation it has -- its theories explain a great deal with a handful of well-tested principles.

Meanwhile, in psychology, virtually all ideas are excuses for debates between differing factions. As an example, one group thinks focusing a lot of attention on a few activities, or one activity, is a sign of mental illness (Asperger Syndrome). Another group thinks this exact same behavior is the only way to accomplish anything beyond the norm (the "Grit" faction). And they don't bother to try to resolve the chasm between their views as scientists would do.

Asperger Syndrome: <http://en.wikipedia.org/wiki/Asperger_syndrome>

A quote: "People with Asperger syndrome often display behavior, interests, and activities that are restricted and repetitive and are sometimes abnormally intense or focused."

"Grit": <http://en.wikipedia.org/wiki/Grit_(personality_trait)>

A quote: "One way in which Grit differs from the need for achievement is that individuals with high scores in Grit often set extremely long-term goals for themselves and pursue them deliberately even without positive feedback."

Different words, same idea -- the ability to focus one's attention on a few goals or one goal. Go to one psychologist, you may be encouraged to persevere. Go to another, you may be diagnosed with an Autism spectrum disorder. Both in the same "scientific" field.

The above is just one example among many. Want to turn psychology into a science? Shape theories that unite different descriptions, then test them. Just like real scientists.

<comment><USER3> _> There is no such nexus. The brain can be studied scientifically, the mind cannot be. This would be like creating a new cosmology department at a university that stands at the nexus of astronomy and astrology._

Okay, you go to the Department of Brain and Cognitive Science at MIT and tell them that they are all quacks. But if you ask me, it's you who are the quack, not they.

 _> If this were true in medicine, doctors would have to stop offering treatments. But the absence of science has had no effect on psychologists_

You act as if medicine has always had the scientific foundations that it now has. It's been getting more an more scientific over time, and it still has a long way to go. Psychology is currently at the state medicine was 100 years ago. And that is simply because it's a more difficult field to study scientifically. We didn't even have the conceptual frameworks to study it scientifically until computer science and artificial intelligence were invented. This is why Behaviorism was such a bust. It attempted to study psychology scientifically, but the prerequisite conceptual frameworks did not yet exist.

Btw, how are you going to rationalize the fact that primary care physicians routinely hand out antidepressants for depression, a disorder identified and classified by psychology?

 _> If doctors offered the kinds of treatments that psychologists offer, on the basis they offer them, they would be arrested._

Nonsense. The most common psychological treatment is just talk therapy, which has been proven effective, at least for treating depression. In the worst case, it's harmless and acts as a decent placebo. (Which is a real effect, of course.)

 _> It's not credible to say that psychology is (a) a science but (b) has nothing to offer clinicians. One, or the other. Not both._

Clearly logic escapes you. Cognitive psychology is a science. This is indisputable. It hasn't developed to the point where it offers much clinical advice. It does offer some, but mostly for mnemonic techniques for those who are suffering from cognitive impairments.

 _> If psychology wants to be regarded as a science, let them craft testable theories that define the field,_

That's what cognitive psychology is doing. See previous discussion on paradigm shifts.

 _> Such theories would place psychology on a par with real sciences, each of which is defined by central, testable, falsifiable theories_

Cognitive psychology is full of them.

 _> Each of these theories is a clear statement that unites its field._

I don't think you've ever studied chemistry. Organic chemistry is as much about all the exceptions, as it is about the rules. It's as sloppy as science can get. And necessarily so, because chemistry is a useful but problematic simplification of the underlying physics. No one even understands why or how lithium ion batteries even work. And yet we use them every day. How unscientific! (And that's not even organic chemistry.)

 _> Psychologists can and do offer treatments that aren't vetted by research. The reason? Psychology is not guided by science.

Clinical psychology may not be guided so much by science. That's a far cry from claiming that cognitive psychology is not science.

_> As a first step, expel clinical psychology from the field.

Psychology is not a single field. Some subfields of psychology are scientific. E.g., cognitive psychology. And some not so much. E.g., clinical psychology. Many disciplines have schisms in them, especially when undergoing a paradigm shift. See previous discussion on paradigm shifts.

 _> As a second step, forbid any treatments not vetted by scientific research._

There's no central psychological organization that could do this.

 _> Conservation of energy is the explanation._

And in behavioral psychology, stimulus response is the explanation.

 _> It's disingenuous to claim that the conservation idea isn't an explanation_

That's good, because that's not what I claimed. I claimed that physics offers no explanation for why the conservation laws apply, which is analogous to Behaviorism offering no explanation for why stimulus response applies. Both were low-level observed phenomena that were then used to explain higher-level phenomena.

 _> Need I add that there is nothing remotely like it in psychology for depth and comprehensiveness._

Psychology is an intrinsically much more difficult field than physics. Physics is the Platonic ideal of science. Comparing other fields to it is what is disingenious. An honest debater might compare psychology to biology or economics or organic chemistry, fields where a grade school notion of what science is does not apply nearly so well.

And even in physics there are the type of divisions that you are describing. E.g., there is serious debate, for instance, on whether super string theory is a worthwhile approach, or not. Or even whether it is properly scientific.

 _> Meanwhile, in psychology, virtually all ideas are excuses for debates between differing factions._

I'm not aware of any serious debates against cognitive psychology. Other subfields are just a lot more impatient than cognitive psychologists are.

 _> As an example, one group thinks focusing a lot of attention on a few activities, or one activity, is a sign of mental illness (Asperger Syndrome). Another group thinks this exact same behavior is the only way to accomplish anything beyond the norm (the "Grit" faction)._

This sort of thing happens all of the time in other sciences. Syndromes in medicine are very comparable, since for syndromes, no cause has usually been determined, and whether the syndrome is actually caused by a single disease or a number of different diseases is up for debate. And yet syndromes are treated by doctors anyway.

 _> And they don't bother to try to resolve the chasm between their views as scientists would do._

See previous discussion on paradigm shifts. Cognitive psychology is the future of psychology. It is perfectly scientific, and this is why there is a world- renowned department dedicated to it at MIT.

<comment><USER2> >> Meanwhile, in psychology, virtually all ideas are excuses for debates between differing factions.

> I'm not aware of any serious debates against cognitive psychology.

That's not what I said -- read it again. I said that factions _within_ psychology differ about which of them is real, is scientific. For example, clinical psychology and psychiatry famously doubt the validity of the other. But neither of them have scientific evidence to support their claims, which is why that debate goes on and on.

Before you make a predictable objection, remember that in real science, fields are united by theory, not divided. Genetics doesn't only guide the activities of geneticists, it unites all of biology. SO does evolution, in exactly the same way -- any evidence that either supports or casts doubt on evolution changes the entire field of biology at once. This pattern is true of all legitimate sciences -- all of them are simultaneously defined and united by their theories. It is not true of psychology, which has factions that pursue similar subjects but come to diametrically opposite conclusions, with no on noticing or caring. The reason? Everyone tries to describe, but no one tries to explain.

> Psychology is an intrinsically much more difficult field than physics. > Comparing other fields to it is what is disingenious.

1\. Unless you're planning to invent a new word, do look up the word "disingenuous".

2\. There is precisely one kind of science. Science is not an ice cream store with dozens of flavors -- science has one flavor. Any scientific field can be compared to any other scientific field as to methods and results. When this comparison is made with psychology, psychology fails the comparison, as the more candid commentators within the field freely acknowledge (see below).

> Cognitive psychology is the future of psychology.

Yes which partly explains why psychology is being replaced by neuroscience.

> It is perfectly scientific ...

Scientific fields craft and then test falsifiable scientific theories, _explanations_. Cognitive psychology can only describe, a failing freely acknowledged by its practitioners.

<http://www.simplypsychology.org/science-psychology.html>

A quote: "Despite having a scientific methodology worked out (we think), there are further problems and arguments _which throw doubt onto psychology ever really being a science_."

I could produce any number of quotes like the above, included in the papers of psychology's honest advocates and supporters, but I don't think it will make any difference -- your mind is made up and you refuse to be confused by the facts.

<comment><USER3> _> Before you make a predictable objection, remember that in real science, fields are united by theory, not divided._

You are ignorant on the history of science. Read Kuhn's _The Structure of Scientific Revolutions_. It will set you straight.

 _> Scientific fields craft and then test falsifiable scientific theories, explanations. Cognitive psychology can only describe, a failing freely acknowledged by its practitioners._

You cherry pick your quotes. Cognitive psychology is just like any other science. It constructs models, uses those models to make predictions, and then performs empirical experiments to test the accuracy of the models.

If you don't understand that science is about _models_ , then you don't understand science.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER4> The low hanging fruit in major fields has long been picked clean. It's not that there's fewer smart people, if anything there are far more than ever in history, it's that discoveries that haven't been made yet are becoming scarcer and scarcer, and the ones that remain are only still there because they are so far out of reach.

</comment><comment><USER5> There probably won't be any more scientific breakthroughs that mess with people's conception of their place in the world the way relativity and quantum mechanics did. That's not the same thing as no more breakthroughs.</comment>


V8 Release 5.0 (upcoming) - <AUTHOR> http://v8project.blogspot.com/2016/03/v8-release-50.html <comment><USER2> How does nodejs sync with V8 releases? ECMA-version, V8-version, Node-version, Javascript-version, browser-version with different features support, it's quite a bit.

<comment><AUTHOR> Node.js Stable tries to follow the V8 version from latest stable Chrome quite closely (i.e. soon after the corresponding Chrome release), but occasionally a V8 version may be skipped, e.g. if it has problematic API changes.

Node.js LTS branches stay on a fixed V8 version.

<comment><USER3> we just managed to get plv8 tracking against the same v8 versions as node (4.4-4.10).

v8 moves very quickly, and even the redhat/debian package maintainers are still distributing 3.14.

</comment></comment></comment><comment><USER4> This is a nice release.

I've always been confused about V8 versioning. Breaking changes appear to come all the time in minor versions.

And there's this note from the release:

> Note: The version number 5.0 does not carry semantic significance or mark a > major release (as opposed to a minor release).

So what does it mark? Why 5.0 at all then?

<comment><USER5> They changed their versioning process to align with Chrome. Chrome 50 == v8 5.0, Chrome 51 == v8 5.1, etc.

<comment><USER6> Correct.

Major versions make more sense when you create a release based on the content. V8 is creating its releases based on time (~6 week cadence). So a 'major' version is nothing special anymore. In 4.9 we greatly expanded our ES2015 support which was huge but only incremented the minor version because of the same reason.

Disclaimer: I work on the V8 team.

<comment><USER4> Why not date-based version numbers, then, or as bryanlarsen stated, something obviously meaningless, like the Chrome/FF numbers?

Edit: By the way, sorry to derail the conversation. You guys are doing great work! I'm always excited about V8 updates because they generally mean great perf/feature improvements to both the most popular browsers and my runtime of choice, NodeJS.

<comment><USER6> The reason is simply 'legacy'. Maybe we will change our version numbers to something without major.minor versions.

</comment></comment></comment></comment></comment><comment><USER7> Optimisations for ES6 features is great!

Any idea how V8 releases relate to Node (especially now post-io.js)? When could we see these improvements on the server?

<comment><USER8> Node.js is easy to compile from sources. Basically when [https://github.com/nodejs/node/pull/5592](https://github.com/nodejs/node/pull/5592) gets merged, all that is needed is

git clone firstname.lastname@example.com:nodejs/node.git; cd node ; git checkout vee- eight-5.0; ./configure; make; make install

to start experimenting.

</comment></comment><comment><USER9> Anyone know the V8 version that they are targeting for node.js 6?

There are some sweet features in ES6 V8 4.9 that I would love to start using including optional arguments and array based destructuring.

</comment><comment><USER10> Any idea when ES6 modules (via the <module> HTML tag) are coming?

<comment><USER11> We just sent out an intent to ship this week! [0] They're trickier to implement than other ES6 features since they require coordination with the Blink side of Chromium.

[0]: [https://groups.google.com/a/chromium.org/forum/#!topic/blink...](https://groups.google.com/a/chromium.org/forum/#!topic/blink- dev/uba6pMr-jec)

</comment></comment><comment><USER12> I've heard there's some V8 changes coming down the pipeline that will end up allowing node to use the serialport package without compiling anything native.

Have I heard wrong?

<comment><USER11> Something related to debugging? Perhaps you came across this thread? [https://github.com/nodejs/node/issues/2546#issuecomment-1893...](https://github.com/nodejs/node/issues/2546#issuecomment-189311746)

</comment></comment><comment><USER13> Surely I'm not the only one asking "what is this/should I care?"

(three clicks later...) V8 is a javascript engine that supports web assembly.

<comment><USER14> V8 is _the_ js engine. The one that is so fast because it compiles in JIT, the one that powers Chrome and Node.js, the one that enabled a full range of let's-build-a-full-app-in-a-browser apps.

Also for the worse: the one that lets us include 10Mb of js in a browser.

<comment><USER15> > _The one that is so fast because it compiles in JIT_

That's true for all modern JS engines (JavaScriptCore, Edge, SpiderMonkey, v8) and has been for several years (almost a decade).

<comment><USER16> But only after V8; before that, JS performance had no priority in browsers.

<comment><USER17> That's a common mistake, but JITs in WebKit and Gecko came out at around the same time as v8. Their development began before v8 launched.

edit: For example, see the dates on Wikipedia, v8 launched September 2008, and WebKit's Nitro (SFX) JIT launched in the same month.

[https://en.wikipedia.org/wiki/WebKit#JavaScriptCore](https://en.wikipedia.org/wiki/WebKit#JavaScriptCore)

[https://en.wikipedia.org/wiki/V8_(JavaScript_engine)](https://en.wikipedia.org/wiki/V8_\(JavaScript_engine\))</comment></comment></comment></comment></comment>


'Netflix tax' for GST on digital products introduced in Australian Parliament - <AUTHOR> http://www.theage.com.au/federal-politics/political-news/treasurer-introduces-netflix-tax-for-gst-on-digital-products-to-parliament-20160210-gmq88u.html <comment><USER2> Can the GST apply to something purchased overseas? Especially weird because we have a tourist refund scheme where tourists can get the GST refunded when the leave the country.</comment>


Engineering management is dying - <AUTHOR> http://deathrayresearch.tumblr.com/post/26759934886/engineering-management-is-dying <comment><USER2> My best managers couldn't do the engineering work I do. Likewise, I can't do their work (I've tried management, it sucked for me, I won't try it again).

My current boss [and one of the best I've had, btw] puts it thusly: "You solve problems with designs and lines of code. I solve problems by putting the right people in the right places." It's an over-simplification of both sides, but it contains a lot of the truth.

Trouble starts when managers (who should be doing people-level stuff) get their mitts into technical stuff, especially when they start "laying down the law" without proper background. That's when they grow pointy hair on their heads, that's when the "send me weekly status report email" requests start, these days it's usually when the "Agile" drums start beating, and it's when I start looking for a new position.

</comment><comment><USER3> In a software company with under 50 employees you can get away with almost anything.

With over 50 employees the only model that ever worked is the one described by <http://manager-tools.com/> :

\- Between 8 to 12 direct reports/manager, never more than 12.

\- Weekly 1-on-1 with EVERY direct report, never missed.

There's a way to flatten the structure somewhat with Team Leads managing up to 6 people: part development, part people management. Even then the Engineering Manager has to be hands-on.

This is how people work and it will not change anytime soon. Everybody needs weekly check-in with the company (represented by the manager) to stay in course. And everybody needs to know "who's the boss", even it it's not an official title or formal authority (think about Linus).

Citing Google as a good example is not too inspired. With all the billion $s they can't come up with one more product - it's still a single trick pony. There's Search/AdWords, everything else is pretty much failure in comparison. Maps is somewhat profitable, but it was bought from somebody else and it's pocket change next to Search. Everybody profits from Android, except Google. And then there's Google+, Wave, Health, Video, Buzz, Catalog, Froogle, Orkut, ...

So before trying out a Google-style manager-less chaos, make sure you have a couple billion $ in your bank account first.

And yes, when somebody is not calling the shots on who gets hired in his/her team, that's not a manager. They get the task (deliver the results) without getting the tools (pick your team). How that would ever work?

<comment><USER4>
        This is how people work and it will not change anytime soon. Everybody needs weekly check-in with the company (represented by the manager) to stay in course.

I call bullshit. I have over a decade of experience in this industry and have only had regular 1-on-1s with my managers over the last year. Despite this, I've always been a highly valued contributor to the companies I've worked for. If anything, the last year has been the worst / most-dysfunctional of my career (although, this is probably not related to having 1-on-1s, but rather unrelated organization chaos). I have always talked regularly (i.e. daily) with my manager, but formal 1-on-1s were never part of the equation.

<comment><USER3> "We see each other every day" does not qualify.

1-on-1 is a very specific, regular and dedicated meeting. This is where you check-in, coach, encourage new ideas, listen to pain points.

It's number 1 requirement even at Google: [http://solutionfocusedchange.blogspot.com/2011/03/googles- pr...](http://solutionfocusedchange.blogspot.com/2011/03/googles-project- oxygen-eight-good.html)

I suggest listening a couple Manager-Tools.com podcasts about 1-on-1. You need more than one person's experience, even if it's for a decade.

</comment></comment></comment><comment><USER5> I'm genuinely surprised that the word accountant or the world lawyer haven't been mentioned in this discussion. From my perspective the issue isn't that engineering management has issues, it's just that mostly the management that is done is done by people with MBA's and law degrees rather than Ph.D's and Engineering degrees.

The structures of modern companies arise from this - lawyers and accountants have no interest in the groups they manage, because they see them as generic interchangeable machines, rather than levers that they are developing to create and make things. They seek to optimize them, rather than nurture them, and then they seek to leave and do it again. A true engineer would want to build something of value and then use it and use it again.

Most engineers opt out, the good fight is not fought, so - management is as it is.

</comment><comment><USER6> Good riddance. There is nothing essential to the role managers fill that couldn't be done by someone without authority over you. That doesn't necessarily mean removing all managers, it just means not making them your boss.

Valve is proof that a flat structure can not just work, but lead to massive financial, critical, and popular success. It's also probably one of the only companies that I would be fulfilled working at that wasn't my own. There's no one to hold you back. I think the startup-minded hackers on this site can relate to that.

<comment><USER7> > There is nothing essential to the role managers fill that couldn't be done > by someone without authority over you.

Bosses can break ties without anybody being too pissed off that their pet idea lost the contest. Bosses can see the approaching ravine and order peolle to build a bridge before the rest of the team gets there.

Valve is a poor example. Mr. Market only cares that their products are fun or interesting. Valve products don't have to conform to MIL-STD-2341 section 243 subsection 12, and be validated according to ANSI 228.3.

<comment><USER8> Why is there a contest? If someone has an idea let them branch the code and implement it. The company can then decide which of the two branches to use and the developers will work harder to win. The real problem is this system is not compatible with the jobs of non-engineering managers. What are they supposed to do in a free market system where developers are making decisions? For their jobs to be viable, an authoritarian system has to be set up. One developer has to be told 'don't do that, we're going with Bob's way.' That's not an environment for innovation. All this accomplishes is now a highly paid developer has no reason to work hard at all, and they sure as hell don't give a shit about Bob's stupid ideas.

As for bosses building a bridge, its ALWAYS going to be "why the hell didn't you engineers know about or implement MIL-STD-2341" not "here's your MIL- STD-2341 reference books and a few contacts for you to get started."

<comment><USER7> > If someone has an idea let them branch the code and implement it.

 _Branch the code and implement it_? What if idea #1 is to add CRM and idea #2 is add interactive business scenario projection?

Many ideas are too big to implement just for the hell of it. And voting for it is no good, because most of the voters have no idea what the hell they are voting for. Somebody has to take responsibility for doing the deep analysis and making the decision. That's called management.

</comment></comment></comment></comment><comment><USER9> Engineering managment fall into 10 differnt types of managment. Those that know binary and those that do not.

Sadly it is extremly rare to find a manager who cant do 1/10th of your job and is actualy any good.

If you advanced up the ranks then you know what to expect, when to expect it and how to deal with your staff, you learn how to deal with HR and the other boring stuff. If you are a manager and have never done the job of the people who you are managing then you know HR and the boring stuff realy well, but can so easily fail to support your staff fully. It's not realy even a fine balance, understanding what your staff do is extreemly important and at least to some degree a manager should know how to at least do aspects of there staffs job, to not know is a situation were you let your staff down or alows them to abuse you by saying it will take longer than it actualy does take. You then have those staff who are good at doing there work on email as apposed to actualy doing the work.

So is Engineering managment dieing - has been for many years now but not for the reasons you outlined. I suspect that during the late 80's some marketing types migrated to IT managment and the rest is history.

</comment><comment><USER10> I think there's something else interesting here in the relationship between engineering managers and project managers. The author writes: "It's been undone by a continuing erosion of responsibility accorded to managers."

We have introduced specialists of various sorts, with varying titles: project manager, program manager, product manager, technical project manager. The introduction of non-managerial technical-track engineering leadership roles for those smart engineers who either can't or won't be good managers has further splintered off the value-add of the engineering manager.

In between team leads and C-staff there are N levels of people who's job has been highly eroded and who struggle hard to add value to their teams.

I am really interested to see where this is going.

<comment><USER8> I don't think those roles are diminishing the value of engineering managers, although I think they are useless as engineering leaders. I think engineering managers are diminishing the role of engineering managers.

Many, many engineering managers are the people who got into technology with the goal of being a manager. As such, they did the minimum amount of actual engineering they could get away with, say 1-2 years. They are motivated only by the fact that engineering management is one of the highest paid professions out there. Linkedin shows some extraordinary insight into this phenomenon as anyone with a few connections can review thousands of resumes. There are managers, directors, VPs, and CTOs who have almost zero actual experience in the technical field they are supposed to be managing. For whatever extremely messed up reason, the tech industry actually supports this.

So you get a whole industry of engineering managers who are not and never were engineers. It's no surprise that their role is the same as a project manager. That's all they can do. They can't steer the technical focus of the group, lead the team towards innovative ideas, or anything that even requires basic technical knowledge. If there's anything eroding the responsibilities of engineering management its the constant dumbing down of the job by the non- technical money chasers trying to get into the job.

</comment></comment><comment><USER11> Thanks, author, for the drip of your contribution to the ocean of everything- has-to-die-for-linkbait.

[http://technologizer.com/2010/08/18/the-tragic-death-of- prac...](http://technologizer.com/2010/08/18/the-tragic-death-of-practically- everything/)

</comment><comment><USER12> Not sure how many people here have managed people before, or at least have first hand experience in a company that has 1) too many managers, 2) too few managers.

<comment><USER13> How about the companies that have too many "managers" and not enough managers. I've experienced that as well.

<comment><USER12> I guess those are usually called 'stakeholders' instead of 'managers'. Yes, they will try to assert their own little asses over you to show they are somebody. Painful, but it is part of work life. [shrug]

</comment></comment></comment><comment><USER14> The salient point is flatter organizations along with the feedback loops that surround developers has changed the role an engineering manager plays. Drucker was correct (as usual) about the knowledge worker's primacy in the modern organization.

</comment><comment><USER15> Besides working with engineers to define the technical direction of our products, my job as an software development manager includes things like: sourcing/hiring, long range planning (including owning P&L for my team), customer engagement, and helping to grow the careers of my engineers (among a million other things). I'm not really clear on how agile or outsourcing make any of these things irrelevant. If the point of the article is that "non technical engineering management is dying" then I think I mostly agree, but the title is misleading.

</comment><comment><AUTHOR> Someone made an excellent point on the blog site that one of the key drivers for a trend towards fewer engineering managers is that engineering management is getting simpler with, in his words:

"the rapid the maturation of "infrastructure as code" tools and methodologies, all the *aaS magic that's out in the world right now, the "App Store" ecosystems, etc. With a small team, you can do seriously global-scale things. "

You can get lot more done now with fewer people and less complexity, which means less management needed.

</comment><comment><USER16> > the widespread acceptance of Agile

somewhere in a parallel universe.

<comment><USER10> I think the author understands the depth of this acceptance of Agile when he writes:

'Today they're surrounded a vast army of scrum-masters and evangelists, recycling (competently, mostly) the same insights, and an even larger crowd performing half-assed renditions of steps learned by rote: "Yeah, we do agile. We have a standup every day." Many of these renditions have the professionalism, but not the passion, of a small-town talent show.'

Which may be my favorite bit in the article.

</comment></comment><comment><USER17> "200-person projects headed by an Engineer"

If you have 200-person projects and still call them projects, you're doing it wrong.

</comment><comment><USER18> I disagree that it's "dying". People management is important, and although bad managers deserve all the scorn heaped upon them, we actually would do better if there were _more_ managers.

The "flat" organizational model seems like a good thing, until you realize that what it actually means is that there's a high managerial branching factor-- sometimes 25 or higher-- which spreads managers way too thin. The problem is that this is unstable. Any manager with 25 reports is not going to be able to be fair. A subset of these reports (let's say 4-5) is going to win the boss's favor. They become _de facto_ bosses off the other 20, but are also direct competitors with them. Now you have all the disadvantages of a 5-tree (instead of 25) but none of the advantages.

Most "flat" organizations aren't egalitarian-- just lazy when it comes to figuring out a structure. Instead, they've traded official organizational hierarchy for unofficial, unstable arrangements that are actually more problematic. In a stable arrangement, your boss is your boss and you are not his competition. In an unstable and informal environment, these "de facto" bosses are also direct competition. That never works well.

People management is still necessary, and _good_ people management is extremely valuable (and, sadly, somewhat rare in many organizations). At one time, I thought otherwise, and that it was the engineers only who actually mattered to the health of an organization, but I was wrong.

What has proven ineffective and wrong is the world in which people managers were given _prima facie_ higher status, creating organizations in which the only way to progress is to move into a management role. That proved not to work, and it does seem to be on its way out.

<comment><USER19> First my business is looking at a flat model. We have a very specific approach in mind.

> _The "flat" organizational model seems like a good thing, until you realize > that what it actually means is that there's a high managerial branching > factor-- sometimes 25 or higher-- which spreads managers way too thin._

In most cases the goal is to get rid of management altogether, and distribute management _functions_ to the teams themselves. You are assuming a direct command and control structure, a flat organization that works is something a little different. I will talk about this below.

> _Most "flat" organizations aren't egalitarian-- just lazy when it comes to > figuring out a structure._

100% correct there, but wrong when you say:

> _Instead, they've traded official organizational hierarchy for unofficial, > unstable arrangements that are actually more problematic. In a stable > arrangement, your boss is your boss and you are not his competition. In an > unstable and informal environment, these "de facto" bosses are also direct > competition. That never works well._

Again, this entirely suggests an idea of command and control rather than something else.....

> _People management is still necessary, and good people management is > extremely valuable (and, sadly, somewhat rare in many organizations). At one > time, I thought otherwise, and that it was the engineers only who actually > mattered to the health of an organization, but I was wrong._

The problem is though that managers inherently filter communication and this leads to high costs as well. Again, if you want to make sure that specific things get done with appropriate accountability then you want to have this structure, but it isn't the only option.

You are probably wondering by now what the alternative is. The alternative is to have a company based on openness, collaboration, communication, collegiality, and entrepreneurship. This sort of culture is very hard to build and maintain. It means that the executives have to cultivate a well-earned reputation of listening to the folks on the job floor, mentoring them, and only taking action when necessary.

We aren't talking egalitarian here. Rather leadership is distributed and people can lead --- or follow --- based on their ability to convince other people that given approaches are good for the company.

The way we run the LedgerSMB (<http://www.ledgersmb.org>) development community is as follows:

1) There is a core committee of three of us, though one is pretty in-active and may not last so much longer. we have the power to ban people, but mostly we just help out folks, do development, and so forth. We are the primary developers in addition to managing the community.

2) Everyone else can contribute but is expected to collaborate on their contributions with the rest of the community. Then they can find a committer to commit. Committers are expected to mentor non-committers.

I think this can work as a business management structure. You can have executives who handle planning, organizational goals, etc. But they do this in collaboration with others in the company in whatever position want to be involved.

The big limiting factor though is this. If the executives can't get a well- earned reputation for openness, the whole thing falls apart and you have to go to a de facto or official command and control structure.

<comment><USER20> Like michaelochurch, I think this is interesting and hope it works out. That said, my immediate thought is "what does it take to become one of those core committee members?"

Read into that what you will ;-)

The other part I think worth a cautionary mention is that you appear to use the words management and leadership as though they are the same. They are not. It's a cliché, but it describes the difference well -

If there's a team of people clearing a path through the jungle with machetes, the manager's job is to make sure the machetes are sharp, the workers have enough water, and generally that they keep clearing a path.

The _leader_ however, climbs a tree and looks around to make sure the jungle is being cleared in the right place.

Lastly, you speak of accountability. And yet you do not mention authority. The one cannot exist without the other. I've had accountability in every single management role I've had and never the authority to run the team or project as I saw fit. There's an imbalance there that has always spelt epic fail.

<comment><USER19> Well, in the community basically it is weighted towards early contributions (duh) but typically it is people who countribute well to the project in all levels. The core committee has never had more than six people in it, and currently is down to three. There have been some political issues that have come up with some nominees unfortunately so I won't say the process works perfectly.

However those who contribute well tend to get commit privileges and those who contribute to strategy beyond code have tended to become core members most of the time.

Also regarding management and leadership.... Management is typically a command and control structure for the leaders. If you have a flat model, leadership becomes something different because you lack that command and control structure, and so does management. Someone gets to make sure the machetes are sharp. Maybe someone else is in charge of water....

But yeah good thoughts.

BTW, I don't think flat orgs work everywhere. The companies that seem to be successful are those with a very narrow focus, like Github (building things around Git) and WL Gore, which builds things out of one, very specialized, form of plastic. Flat orgs scale up to any number of employees, but they don't scale up to large numbers of goals. I can't imagine how you'd have a flat org structure at Microsoft. Well I can, but it wouldn't be all that flat and it certainly wouldn't be a single org....</comment></comment></comment></comment>


The New Dating Game - <AUTHOR> http://weeklystandard.com/print/articles/new-dating-game?page=12

<comment><USER2> Semi-interesting, but I am strongly disinclined to trust anything Charlotte Allen has to say about culture because other things I've read by her seem always to have a heavy social-conservative spin on them. A few examples:

<http://www.papillonsartpalace.com/whWereare.htm> ("The vast majority of women who might otherwise qualify as public intellectuals would rather recite the feminist catechism or articulate some new twists and refinements on it than carve out a place for themselves in the larger public world." The sole purpose of this article seems to be being as negative as possible about present-day feminists.)

<http://articles.latimes.com/2009/may/17/opinion/oe-allen17> ("I can't stand atheists -- but it's not because they don't believe in God. It's because they're crashing bores." Most of the article consists of this sort of insult and sneering.)

[http://www.weeklystandard.com/Content/Public/Articles/000/00...](http://www.weeklystandard.com/Content/Public/Articles/000/000/016/484gmzem.asp) (unkind but not very unfair summary: Bill Ayers! Barack Obama! Progressives are idiots, hahaha! Look, some Marxists!)

And, surprise, surprise, it turns out she works for a conservative think tank. Of course it's perfectly possible for someone who works for a conservative think tank to have useful and interesting things to say, but in practice I tend to find that such people give a high enough priority to pushing a particular agenda -- as, after all, they are being paid to do -- that I can't trust anything they say without independent verification. (The same may well be true of people working for think tanks on the other side, but there seem to be considerably fewer of them about.)

<comment><USER3> If you read the content and find it interesting (and aren't worried about neuro-linguistic hacking or subliminal messaging or hypnosis or any other covert channel), why does the source matter?

<comment><USER2> I can tell whether something is interesting without knowing anything about the source, but I can get a better idea whether something is _trustworthy_ , with less effort, if I have some information about the source.

The source probably doesn't matter at all if, for whatever reason, I've already decided that I'll go through checking every single assertion, looking out for every unstated insinuation and every tendentious turn of phrase. But, odd though it may seem, I don't normally do that, and I don't think anyone else normally does that, either. So it's useful to have some advance notice of what level of caution is called for in reading the text.

</comment></comment></comment><comment><USER4> _the median number of lifetime sex partners for all U.S. women ages 15 to 44 is just 3.3, according to the Census Bureau's latest statistical abstract._

Huh? How exactly do you end up with .3 of a sexual partner?

<comment><USER5> Curiously, the corresponding number for males is 5.4.

Black males are such studs (8.3 partners) and latinas really save themselves for marriage (1.7!).

Guess what, people lie.

<comment><USER2> With equal or roughly-equal populations of men and women, the _means_ should be the same for both, but the _medians_ needn't be. Thought experiment: 100 men, 100 women; there are 10 women who have sex with all the men, and no other sex is had. Then the mean number of partners is 10 for both men and women, but the median number is 10 for the men and 0 for the women.

You can get a similar result even with means, if for some reason your sampling procedure doesn't catch the outliers. (For instance, if they're very rare, or if they're demographically different in a way that makes it harder for your sampling to find them.)

Having said all that, I suspect lying really is the main contributor to these differences.

<comment><USER6> If you had 100 men and 100 women, you wouldn't get 100 couples. You'd get everyone going after the top 10 of the opposite sex and ignoring everyone else.

</comment></comment></comment></comment><comment><USER7> It's all true. The effectiveness of the approach is amazing, I lost every single bit of respect in the female gender in the process of trying it out myself. Now I'm searching for someone on which this stuff doesn't work. I'm afraid i'll end up alone.

<comment><USER8> What would you recommend in terms of 10 hours of reading that I can do to go out and start myself?

<comment><USER7> I started with 'The Game' from Neil Strauss, that gave me the idea. From then it was all downhill, you just have to go out and try. I never used canned openings and that kind of stuff, i also never read any kind of specific 'technical' material like the Mystery method.

I think that the really important things are to grasp the concept, learn to use the feedback that you receive from them effectively and (most importantly) get over the fear of rejection that goes with the approach. Once you lose the fear everything becomes easy.

<comment><USER9> Should come in handy when you start your career in sales, too.

</comment></comment></comment></comment><comment><USER10> Previously discussed a couple months ago here: <http://news.ycombinator.com/item?id=1108017>

What struck me about the article wasn't so much the information (I already knew about this stuff before) but the particular spin imparted onto it by the neocon point of view. I don't mean this as a criticism but as a genuine point of interest.

</comment><comment><USER11> Sounds like things have not changed much in the dating world in the last ten years. Presumably the weekly standard prints this to boost page views. The PUA lifestyle has been a non-story for the last five years at least. And, yes, it is possible to seduce attractive women by creatively debasing yourself. _sigh_

<comment><USER12> Their focus on one particular famous guy makes it not that convincing, either. "Famous men have no trouble picking up women, even if they're jerks" hasn't _ever_ been unusual.

<comment><USER9> I guess that Max guy is just in there, because he's famous. The real hero of the piece is Roissy.

</comment></comment></comment><comment><USER13> "the short-statured, the homely, the paunchy, the balding, and the sweater- clad are, if not turned away outside by the bouncer, ignominiously ignored by the busy, beautiful people within."

As a short statured, homely, paunchy, balding sweater-clad person, I guess I'm dead :P (I wish I was joking... I don't use sweaters all the time, but I guess that's my only saving grace.. )

The article has a point about Roissy's blog, which someone here on HN pointed me out: it's darkly fascinating.

<comment><USER14> Check out Roissy's "Dating Market Value" tests. I wish someone could convince me that this stuff is a big lie. Of course, it's exaggerated to make a point..but then again, his exaggerations aren't that big either. He's not close to approaching irony or sarcasm.

<comment><USER13> I did (ugh). -14 ... well, I'm determined to change what I can of my life (no, I'm not going to wear a wig :P )

(handy link in case you have no idea what we're talking about: [http://roissy.wordpress.com/dating-market-value-test-for- men...](http://roissy.wordpress.com/dating-market-value-test-for-men/) )

</comment></comment></comment><comment><USER15> Great line re: the 'pick up artists'-- _If it all sounds cheesy, tedious, manipulative, obvious, condescending to women, maybe kind of gay, it's because it is._

Pretty funny to read that coming from the Weekly Standard.

<comment><USER16> In the next sentence, he state: "but it works." It was pretty telegraphed given the setup.

</comment></comment><comment><USER17> (Although it is paginated into 12 pages, I found it easier to read the article on the original template rather than the print template: <http://weeklystandard.com/articles/new-dating-game>)

<comment><USER16> Use the readability bookmarklet instead. Bless the HNer who told me of this.

<http://lab.arc90.com/experiments/readability/>

<comment><USER18> this is really good!</comment></comment></comment>


WeWork to Raise Billions Selling Debt Ahead of IPO - <AUTHOR> https://www.wsj.com/articles/wework-to-raise-billions-selling-debt-ahead-of-ipo-11562524614?mod=rsswn <comment><USER2> The biggest thing I've learned since college is that any press about a soon- to-be money loser is one you DEFINITELY want to invest in

</comment><comment><USER3> Better be greek bond like interest rates..</comment>