The digest of interesting events from the Java world, and around it # 1 (05/02/2016 - 05/08/2016)

    image

    In this issue


    - The automotive giant is investing hundreds of millions of dollars in Pivotal
    - Akka is not the same
    - Apache Spark will have to make room
    - How to add a new method to java.lang.Runtime ?
    - How to get the source string, knowing only its hash?
    … and much more

    1. Trends


    1.1. Pivotal raised the dough again

    As it became known, Microsoft and Ford have invested approximately $ 250 million in Pivotal . Microsoft's motivation is not particularly interesting - IT specialists invested in IT specialists. Far more interesting tasks Ford. A few comments from the CIO of the auto giant, Marcy Klevron , who will join the Pivotal board:
    Our decision is part of our vision as we become both an auto and a mobility company.
    We are re-positioning the company into a software world.
    Very indicative situation. IT technologies penetrate an increasing number of industries in the real sector of the economy, and have every chance of occupying key positions there in the future for several decades. I think in 2100 it will be very difficult to say which department is most important for a typical automotive giant - designers, designers or IT specialists?

    “800 horses, 1000km without recharging, Android Microservices Edition sports package, not a bit, not crash, bargaining on the hood ...”

    1.2. Where is Akka?

    Thoughtworks removed Akka from its radar, “archiving” this technology. In fact, this means "Akka became boring." In my opinion, the decision is right. A lot of words have already been said about the actor model and reactive programming, and many letters have been written. The pros and cons are clear, the scope too. Technology has become an adult and everyday.

    The guys from the Scala world, of course, are not very happy:

    1.3. Google catches up with spark

    Meet the new project at the Apache incubator - Apache Beam . This is a set of interfaces for creating a data processing pipeline. You write a program using these interfaces, and then run it on a specific engine, be it Apache Spark or Google Cloud DataFlow .

    image
    Source: shinetechblog.files.wordpress.com

    The main sponsor of the project (who would have thought?) - Google . They explain their motivation as follows : make a high standard, drag a lot of applications onto it, and then slip their cloud platform under these applications. For example, with the help of these benchmarkshahaha. In fact, a big bet is placed on open source in general, and Apache in particular, as the most influential OSS community.

    A very timely movement, which can give Google a good chance to saddle the growing trend of bigdating processing .

    1.4. What enterprise do you have?

    Plumbr collected usage statistics for JEE containers. The results are quite expected, most of all are harnessed by Tomcat and JBoss .

    2. Read


    2.1. Azul poured Runtime.onSpinWait () into OpenJDK

    Link : https://www.azul.com/jep-285-small-perfectly-formed/

    A rare case when a company with a name other than Oracle independently promoted and sponsored a feature that also changed the base class java.lang. Runtime .

    The process was not easy. Especially hard was the decision to name the corresponding method. In the process of discussion, nerves in people have already begun to pass . From the outside, this may seem like a bureaucratic cost, but in practice the proper naming of classes and methods of a framework or platform is hardly inferior in importance to implementation. As you call a boat, so it will float.

    In the end, everything was resolved safely. Now spinning in JDK9 will be more fun.

    2.2. Interesting discussion of Java Mission Control

    Link : https://groups.google.com/forum/#!topic/mechanical-sympathy/uJqHLd_i2hE The

    thread started with scripting in JMC, but very quickly went offtopic, switching to discussing the advantages and disadvantages of JMC, as well as its upcoming changes to JDK9. Interesting.

    2.3. Great Netflix Engineer Report on SRE Tools

    Link : http://www.brendangregg.com/blog/2016-05-04/srecon2016-perf-checklists-for-sres.html

    SRE is site reliability engineering . In short - these are devops, performance artists and architects all rolled into one. Their task is to make the service a) work; b) worked quickly; c) scaled. The task is interesting, but far from the easiest. Click here for a report on which tools the guys in Netflix SRE use . Instructive.

    3. Wisdom


    3.1. About in-memory


    3.2. About moki and too categorical statements


    3.3. About "write everything yourself"


    3.4. About throughput and latency


    4. Humor


    4.1. Proper Exception Handling

    Just add a link to StackOverflow in the message.

    4.2. Retrieving a Hash String

    [: |||||:]

    Both laughter and sin: the developer asked to help him with a string hashing algorithm. The main requirement is the ability to get the source string by hash. The answer was not long in coming:
    #include 
    int main() {
        std::string s = "Hai!";
        std::string* ptr = &s; // this is a pointer
        std::string copy = *ptr; // this retrieves the original string
        std::cout << copy; // prints "Hai!"
    }
    

    An occasion to ponder those who do not like fundamental questions at interviews.

    4.3. It became known who was the prototype of Imp in the first Doom

    [: |||||:]

    This is Phillip Heath :
    image

    Conclusion: pull the iron, and maybe someday you will draw the character of the next shooter.

    Issues: Next


    Also popular now: