HN user

jared314

1,679 karma

Look out; I have an opinion!

http://blog.lobberecht.com

Posts7
Comments759
View on HN

I had no idea how far ahead of node on es6 features io.js was

That is because io.js upgraded to a current, and maintained, version of Google V8. This was one of the reasons for the fork.

io.js: V8 4.1.x

node.js: V8 3.28.x

They are going to support JavaScript soon

Whoa. Slow down. They have only confirmed replacing their custom configuration language with JavaScript and hinted at an official JavaScript module [1], as opposed to the existing third-party module [2].

Bundling a Node.js-like JavaScript api layer with their official module would be a logical next step, because nginx is an event loop anyway. But, I highly doubt JavaScript will be anywhere near the Nginx core.

[1] http://www.infoworld.com/article/2838008/javascript/nginx-ha...

[2] https://code.google.com/p/ngxv8/

The Hating Game 11 years ago

I have an alternative, and potentially equally silly, hypothesis.

Many programmers are young and have just enough money, time, and knowledge to get into trouble.

This is compounded by the growth rate of the programming field. New, young, programmers jump into the industry every year. So, a young programmer can potentially encounter entire teams of equally young programmers, creating a school like atmosphere of aggression and dominance. (Which is sometimes taken advantage of by employers.)

It's the Blub Paradox, but with people.

This is why I believe that you, the interviewer, cannot interview someone above your "experience level" without some kind of objective test.

It's been said that the population of programmers doubles every ~5 to 10 years. And, that loosely correlates to the hype cycle of "hot technologies".

I don't think it's possible to avoid a pop culture with that many young and inexperienced programmers, especially with a cultural emphasis on self-training over mentoring.

The mathematics of space-travel is very simple - it's just calculus. You need to be accurate, but it's easy to quantify and well controlled.

We're not talking about calculating our way to the moon. We're talking about going to the moon.

The space program had much more than a graphing calculator. They had buildings full of people, systems, and realtime communication with the craft.

The moon landing really was nothing compared to this.

I used to believe that, but I have slowly moved to the other side.

Things are complicated. There is no doubt about that. But, landing on the moon was a fight against nature (gravity, air, distance, etc). Current programming is a fight against stuff someone else dreamed up and no one ever fixed, because "LOL, that's old school" or "You're just doin' it wrong".

Most of the points about parts not being specified correctly, not working as expected, or disappearing happens all the time in other industries. (That's one reason hardware kickstarters fail so often.)

From the article:

Consumers do not get a break. At LensCrafters, the average cost for a pair of frames and lenses is about $300. You may think -- well, there's choice in the mall for other glasses. But Luxottica doesn't only own the top eyewear chain in the country, it owns another large chain: Pearle Vision, and Oliver Peoples, and several boutique chains. And it runs Target Optical and Sears Optical. And we're not done, Luxottica also owns Sunglass Hut - the largest sunglass chain in the world.

The cost of frames is not based on the cost of traditional manufacturing. Luxottica controls the market, like De Beers and the diamond market.

Single material. Customized for each client.

This looks like a good place for 3D printing to start chipping away at traditional manufacturing.

[Edit] I am talking specifically about printing the overpriced frames sold by Luxottica. Not the lenses.

My screen's big enough where visual noise isn't an issue.

I've got good headphones

You may not have issues with open-office plans, but you did find a way to add the walls back.

This seems like bit of a short sighted move ... Leaving the JVM means you abandon the decade of libraries

Pixie is not officially connected to Clojure in any way.

The creator has been involved in Clojure's development, and is remixing parts he likes into a new language and platform. I would peg this more as a research project that the Clojure team could take some pointers from.

Fired 11 years ago

Part of the problem with not admitting publicly that you were fired is that people inevitably assume you're moving onto something bigger and better

I thought the issue with admitting it was that people would now question your reliability as an honest contributor to future workplaces.

Hack Education 11 years ago

Just negate the lesson. Teach them that people say "moss on trees can be used for navigation" and that it's not completely accurate.

Hack Education 11 years ago

Say, you want to teach kids that moss on trees can be used for navigation

Just make sure you are teaching them things that are accurate and generalizable.

Moss does not only, or generally, grow on the north side of trees. When it does, it's a very local-environment specific phenomena that cannot be generalized.

Let's not forget that string-based programming is the source of many many bugs

Since the parser generator compiles the EBNF into an executable function at runtime. The solution is the same as writing code in Ruby, JavaScript, or any other dynamic language. Write a unit test.

Calling the Clojure api directly from Java would look something like the following:

    import clojure.java.api.*;
    import clojure.lang.IFn;
    import clojure.lang.PersistentVector;
    
    public class Core {
    	
    	public static void main(String[] args)
    	{
    		String grammar1 = "S = AB*\n" +
    				  "AB = A B\n" +
    				  "A = 'a'+\n" +
    				  "B = 'b'+";
    		
    		Clojure.var("clojure.core", "require").invoke(Clojure.read("instaparse.core"));
    		IFn parser = Clojure.var("instaparse.core", "parser");
    		IFn asandbs = (IFn)parser.invoke(grammar1);
    		PersistentVector result = (PersistentVector)asandbs.invoke("aaaaabbbaaaabb");
    		
    		System.out.println(result.get(0).toString());
    	}
    }
But, my suggestion would be to build a Java friendly api in Clojure, with gen-class, and then consume that.

Let's look further at this short selling behavior as it scales.

I'm not talking about general short selling. I'm talking about this specific case.

He discovered the company was a fraud, shorted the stock, and then exposed it. That stock had to be sold, to someone else, for the short to be profitable. This means he knowingly participated in the scam.