Paul Krill

About the Author Paul Krill


RacerD detects hard-to-find race conditions in Java code

Facebook has begun offering broad access to RacerD, a tool intended to tackle the longstanding problem of race conditions in software.

RacerD had been available as a prototype, accessible in Facebook’s open source code base only through a series of backdoor options, said codeveloper Sam Blackshear, a Facebook research scientist. Now, the tool will run by default in Facebook’s open source Infer static analysis tool for bug detection. Initially, RacerD is available only for Java code. But plans call for expanding coverage to other languages, including C++.

With race conditions, overlapping processes trying to access the same data concurrently can cause conflicts in programs. These concurrency errors can be difficult to debug or even reproduce. “This has really been a hard problem” in computing for about 50 years, said Peter O’Hearn, a research scientist on the Infer team and co-author of RacerD.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

What’s new in Microsoft .Net Framework 4.7.1

With Microsoft’s release of .Net Framework 4.7.1 this week, the development platform gains critical improvements to garbage collection, security, and application configuration. 

To boost memory allocation performance, particularly for large object heap allocations, an architectural change to the garbage collector splits the heap allocation into small and large object heaps. Applications making a lot of large object heap allocations should experience a reduction in allocation lock contention and better performance.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

At GitHub, JavaScript rules in usage, TensorFlow leads in forks

JavaScript is the most-popular language on GitHub, based on pull requests from the popular code-sharing site.

Since September 2016, there have been 2.3 million pull requests for JavaScript, GitHub reports. Following web development staple JavaScript was Python, with 1 million requests, and Java, with 986,000 requests. Python displaced Java as the second-most-popular language on GItHub. Also improving its lot greatly in 2017 was TypeScript, Microsoft’s typed superset of JavaScript, which had 207,000 pull requests, almost four times as many requests as it had the year before.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

What’s new in TypeScript 2.6

Version 2.6 of Microsoft’s TypeScript language has moved to a release candidate stage. The new release of the typed superset of JavaScript features improvements such as increased strictness to help developers better find mistakes.

TypeScript 2.6 introduces a “strict” mode flag, which is identified as —strictFunctionTypes. In strict mode, any function type that does not originate from a method has its parameters compared “contravariantly,” Microsoft’s Daniel Rosenwasser, program manager for TypeScript, said.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

‘Universal’ Windows development adds .Net Standard 2.0 support

Microsoft’s Universal Windows Platform (UWP), an attempt to foster development of apps across multiple devices all running Windows 10, now supports the .Net Standard 2.0 specification for .Net unification.

But this move comes right after Microsoft revealed it was effectively pulling the plug on its Windows Mobile platform for smartphones, making Universal Windows apps less universal. In fact, Microsoft has been expanding support for Android and iOS in its various development tools as it effectively cedes the mobile market to Google and Apple.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

What’s new at GitHub: dependency management, security alerts

GitHub is adding several services to its popular code-sharing site to help developers manage dependencies and improve security.

GitHub dependency graph service

With the dependency graph service, GitHub will use its own data to build a dependency graph that gives developers insight into both projects their code depends on and the projects that depend on their code.

The essential features in the GitHub dependency graph service

Via the dependency graph, developers can see which applications and packages they are connected to without leaving their repository. The graph currently supports JavaScript and Ruby code, with Python support planned for later.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

Kotlin could overtake Java on Android next year

Kotlin is on its way to overtaking Java on that mobile platform, claims mobile database maker Realm.

Realm performed an anonymized assessment of 100,000 developers using its database and which languages they were using, determined by developers’ selection of SDKs. Realm found that 20 percent of apps built with Java before Google’s May endorsement of Kotlin are now being built in Kotlin.

Based on that data, Realm predicts Kotlin will overtake Java on Android by December 2018. Kotlin may even change how Java is used on the server, the company said: “In short, Android developers without Kotlin skills are at risk of being seen as dinosaurs very soon.”

To read this article in full or to leave a comment, please click here

Read more 0 Comments

What’s new in Microsoft Visual Studio Code 1.17

The September 2017 release of Visual Studio Code, aka version 1.17, has arrived with a number of significant updates. Among the many improvements, the upgrade to Microsoft’s open source code editor brings region markers to the code folding support and boosts the performance of the built-in terminal.

With code folding, developers can hide away regions of source code using folding icons on the gutter between the line numbers and the start of a line of code. The region markers allow you to specify with comments exactly where your foldable blocks begin and end. Markers have been defined for TypeScript, JavaScript, C and C++, C#, F#, PowerShell, and Visual Basic.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

Java microservices profile gets fault-tolerance capabilities

The Eclipse Foundation’s MicroProfile project to add microservices to enterprise Java has released MicroProfile 1.2, which adds capabilities for fault tolerance and security.

New features in MicroProfile 1.2

A fault-tolerance API in MicroProfile 1.2 provides a way for applications to deal with the unavailability of a microservice, said IBM Distinguished Engineer Ian Robinson, who has worked on MicroProfile. When old-style monolithic applications fail, they bring down the entire application. But applications composed of microservices continue to operate if a specific microservcie fails, leading to “more interesting failure scenarios,” he said. To deal with service failures, applications need a way of handling the unavailability of a service, such as to resort to a fallback service if a primary service is unavailable. Such fallbacks are what MicroProfile 1.2 allows.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

Apple’s Swift is losing developers to multiplatform frameworks

When Apple’s Swift language for MacOS and iOS development debuted in June 2014 as the modern successor to Objective-C, Swift began to gain a foothold with developers. But now Swift is actually slipping in popularity, according the latest Tiobe index.

Why is Swift losing steam? Tiobe attributes it to developers leaving the Apple-only Swift/Xcode development environment for frameworks that build multiplatform mobile apps such as Microsoft’s Xamarin, Apache Cordova, and Ionic. Xamarin leverages C# while Cordova and Ionic rely on JavaScript.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

Azure Functions serverless computing to finally get Java

Microsoft’s Azure Functions serverless computing platform now has beta support for Java programming, a feature developers have demanded since Azure Functions’ 2016 debut.

The beta inclusion of Java joins Azure Functions’ existing support of JavaScript, C#, F#, Python, PHP, Bash, Batch, and PowerShell.

The Java runtime will share features of Azure Functions such as triggering options, data bindings, and a serverless model with autoscaling. The new support for Java is a follow-up to Microsoft’s recently announced capability for running the open source Azure Functions runtime on .Net Core, the company’s cross-platform implementation of its .Net development platform.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

What’s in store for the next Java

Fresh from the long-awaited release of Java Development Kit (JDK) 9 on September 21, Oracle is mapping out planned upgrades for Java, including for the Java 18.3 version due in March 2018 as part of a new, six-month release schedule for standard Java.

Here is what Oracle has said is under consideration for the next and later versions of Java SE:

To read this article in full or to leave a comment, please click here

Read more 0 Comments

Under Eclipse, changes to Java EE begin

As part of the change in ownership of Java EE (Enterprise Edition) from Oracle to the Eclipse Foundation, how Java EE works and is managed are starting to change.

For one, Oracle is making the Java EE technology compatibility kits (TCK), which ascertain if an implementation is compliant with Java, available via open source. Eclipse Executive Director Milinkovich called this “a very fundamental change to the dynamics of this ecosystem.”

Under the open-sourcing of the TCKs, users themselves can test for compliance instead of relying on what Milinkovich termed the previous “pay-to-play model” to confirm compliance—with Oracle using the TCKs as a way to exercise control over the Java EE ecosystem, he said. This open-sourcing of the TCKs should hopefully bring other providers to Java EE table, building implementations, Milinkovich added.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

Oracle joins the serverless fray with Fn

With its open source Fn project, Oracle is looking to make a splash in serverless computing.

Fn is a container native serverless platform that can be run on-premises or in the cloud. It requires the use of Docker containers. Fn developers will be able to write functions in Java initially, with Go, Ruby, Python, PHP, and Node.js support planned for later. Applications can be built and run without users having to provision, scale, or manage servers, by using the cloud.

Fn, as its name implies, relies heavily on functions, which are small blocks of code that generally do one simple thing. In a function, developers focus just on just the task they want the function to perform.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

What’s new in Kotlin 1.2? Code reuse, for starters

Version 1.2 of the statically typed Kotlin language, will offer an experimental feature enabling reuse of code across platforms, as well as compatibility with the Java 9 module system. The beta of Kotlin 1.2 is now available for download.

Kotlin’s experimental multiplatform projects capability lets developers reuse code between supported target platforms: JVM and JavaScript initially, and later native. Code to be shared between platforms is placed in a common module; platform-dependent parts are put in platform-specific modules. During compilation, code is produced for both the common and platform-specific parts.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

Java debugging comes to Visual Studio Code

Microsoft has released a Java debugger for its free open source editor, Visual Studio Code. The newly minted extension is intended to work as a companion to the Language Support for Java extension provided by Red Hat.  

Whereas Red Hat’s Language Support for Java extension provides IntelliSense capabilities and Java project support, it does not include debugging capabilities. Microsoft’s Java Debug Extension works with previous Red Hat’s extension to provide them. Still in a preview mode, the Java Debug Extension offers capabilities including launch/attach, breakpoints, control flow, data inspection, and a debug console. The Microsoft and Red Hat extensions are available separately or in the Java Extension Pack, which bundles both together in a single install. Microsoft’s plans call for enabling a modern workflow for Java, with more features and extensions planned going forward.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

Giraffe brings F# functional programming to ASP.Net Core

Giraffe, a micro web framework based on the F# language, is bringing functional-style programming to the development of web services on ASP.Net Core. Although F# is already supported in ASP.Net Core, Giraffe puts greater emphasis on the functional programming style by leveraging features such as higher-order functions. 

Likened to the Suave web server but specifically designed to work with Microsoft’s ASP.Net Core web framework, Giraffe is described as a native functional framework for building rich web applications that draws on advanced F# features. F# is an open source functional-first language that Microsoft created to address complex computing problems while producing simple, maintainable code.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

Google App Engine adds support for Java 8

Google has made the Java 8 runtime generally available on App Engine, the Google Cloud Platform’s development platform service. Google said the upgrade removes performance limitations Java developers have had to deal with when using the Java 7 runtime. Java 7 remains a supported option. 

“Unfortunately, using Java 7 on App Engine standard environment also required compromises, including limited Java classes, unusual thread execution, and slower performance because of sandboxing overhead,” said Amir Rouzrokh, Google product manager.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

What’s new in React 16 JavaScript UI library

React 16, the latest version of the popular JavaScript library for building UIs, goes live today, with a rewritten core for better performance.

Dubbed “React Fiber” during its development, React 16 is a rewrite of the React core, improving perceived responsiveness for complex applications via a new reconciliation algorithm.

Key features of the React 16 include:

To read this article in full or to leave a comment, please click here

Read more 0 Comments

Facebook buckles under pressure over hated React license

Under pressure from organizations such as the Apache Software Foundation, Facebook is changing the licensing of its open source React JavaScript UI library to one considered less risky for developers.

Beginning with next week’s React 16 release, React will be licensed under the MIT open source license. A point release of React 15 also will be offered next week based on the MIT license.

That change in license removes a controversial term in the BSD + Patents license that Facebook had been using for React. The BSD + Patent license stipulates that anyone using software released under it loses the license if they sue Facebook for patent infringement.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

What’s new in Apple’s Swift 4.0 language

Swift 4.0 is now available. It’s a major upgrade to Apple’s Swift, the three-year old successor to the Objective-C language used for MacOS and iOS application development.

The Swift 4 upgrade enhances the Swift Package Manager and provides new compatibility modes for developers. Apple said Swift 4 also makes Swift more stable and improves its standard library. Swift 4 is largely source-compatible with Swift 3 and ships as part of Apple’s Xcode 9 IDE.

What’s new in Swift 4’s package manager

Swift Package Manager, which debuted in Swift 3, is tool for distributing code. It is integrated with the Swift build system to automate processes including downloading, compiling, and linking of dependencies. Improvements in Swift 4’s package manager include:

To read this article in full or to leave a comment, please click here

Read more 0 Comments

IBM open-sources a microservices-friendly Java app server

A few weeks ago, Nginx released its multilanguage microservices-friendly app server, but without Java support at launch. Now IBM has a beta build of its own microservices-friendly app server for Java applications: the open source Open Liberty, which implements IBM’s version of Java EE and MicroProfile microservices implementation.

Open Liberty will provide a runtime supporting Java microservices that can be quickly updated and moved among different cloud environments. When combined with the Eclipse OpenJ9 Java Virtual Machine, OpenLiberty will provide a full Java stack, IBM said. (OpenJ9 had been IBM’s J9 JVM, which it contributed to the Eclipse Foundation that now manages Java EE.)

To read this article in full or to leave a comment, please click here

Read more 0 Comments

Forget PHP! Facebook’s HHVM engine switches to Hack instead

Facebook’s Hip Hop Virtual Machine (HHVM), a speedy engine for PHP, will not target PHP 7, the most-recent major PHP release, but instead will focus on Hack, a PHP spinoff.

The next long-term support release of HHVM, version 3.24, is due in early 2018 and will be the last to commit to PHP 5 support. 

“Trying to support both PHP 7 and Hack would lead to undesirable compromises on both fronts. We plan to decouple ourselves even more from PHP so that we can make Hack great without having to account for all of the oldest, darkest corners of PHP’s design,” the team HHVM team said.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

CoffeeScript 2 arrives with JavaScript syntax improvements

CoffeeScript, a simple languages that compiles to JavaScript and aims to make web developers’ lives easier, has just moved to a second major release, one that emphasizes syntax improvements. 

CoffeeScript 2, which had been in a beta stage since April, features a compiler that translates CoffeeScript code into modern JavaScript syntax. A CoffeeScript “class” is now output using the class keyword, for example. Version 2 also features support for async functions syntax, the future object destructuring syntax, and JSX, which is JavaScript with interspersed XML elements.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

Angular 5 JavaScript framework delayed

Angular 5, the next version of the popular Google-developed JavaScript framework, was to have debuted this month. But the release is now set to arrive October 23, because Google needs more time to work on the upgrade process.

As a result of Angular 5’s delay, Angular 6 should arrive in March or April 2018, followed by Angular 7 in September or October 2018. Each version is promised to be backward-compatible with the prior release.

Angular 5’s promised capabilities include building progressive web apps as well as a build optimizer and accommodations for Material Design components.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

Eclipse eclipses Visual Studio as most popular IDE

The Eclipse IDE, popular with Java developers, has displaced Microsoft’s Visual Studio as the most popular desktop IDE in the PyPL Top IDE index of September.

While Visual Studio was tops in the August version of the PyPL Top IDE index, it dropped to second place this month behind Eclipse, with Eclipse showing a 24.23 percent share and Visual Studio a 21.77 percent share. Similar to PyPL’s monthly language index, the Top IDE index is based on how often IDEs are searched on in Google, with raw data coming from Google Trends.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

Eclipse eclipses Visual Studio in PyPL Top IDE index

The Eclipse IDE, popular with Java developers, has displaced Microsoft’s Visual Studio as the most popular desktop IDE in the PyPL Top IDE index of September.

While Visual Studio was tops in the August version of the PyPL Top IDE index, it dropped to second place this month behind Eclipse, with Eclipse showing a 24.23 percent share and Visual Studio a 21.77 percent share. Similar to PyPL’s monthly language index, the Top IDE index is based on how often IDEs are searched on in Google, with raw data coming from Google Trends.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

Iroh brings dynamic code analysis to JavaScript

Static analysis tools reveal potential bugs by spotting common coding mistakes. But you never really know what your code will do until you run it. An open source tool called Iroh.js, currently in beta development, allows JavaScript developers to perform dynamic code analysis to see exactly how their code behaves at execution.

Iroh enables developers to record code flow in real time. It also can intercept runtime information and manipulate program behavior on the fly. Runtime values such as parameters or variables can be captured while code is running. “You can, for example, collect type information and even manipulate the running program because of the access to all runtime data,” developer Felix Maier said. 

To read this article in full or to leave a comment, please click here

Read more 0 Comments

Unwanted by Oracle, Java EE gets adopted by Eclipse

The Eclipse Foundation is set to become the new steward of enterprise Java, taking over from Oracle, which no longer wants to manage Java EE.

As part of the adoption, Java EE will likely get a new name, something Oracle recommended in its proposal to have a foundation adopt Java EE.

A month ago, Oracle said it would end its stewardship role of Java EE and turn it over to an open source foundation. Following consultations with Java partners such as IBM and Red Hat and after meeting with several foundations, Oracle has settled on an organization that has had a long history in Java development: the Eclipse Foundation. Eciipse created its popular Eclipse IDE and managed multiple other Java technologies.

To read this article in full or to leave a comment, please click here

Read more 0 Comments

GitHub is converting its Atom text editor into an IDE

Atom, GitHub’s text editor built on the Electron framework, is being fitted with IDE-like capabilities as a precursor to making the editor a full-fledged IDE.

The first step in Atom’s transition from text editor to IDE is an optional package of features developed with Facebook called Atom-IDE.

The package includes:

To read this article in full or to leave a comment, please click here

Read more 0 Comments