Skip to main content

Microsoft Goes All Out On Java

Microsoft has released an update to VSCode that has support for Spring based applications. At the same time there's a new Microsoft website, a dedicated to Java.


It's not just .NET any more, but the JVM too. Back in 2021,  in "Microsoft Jumps on the OpenJDK Bandwagon" we witnessed the beginnings of Microsoft's love affair with Java, when Microsoft released its own build of Java's OpenJDK. Why would Microsoft do that that when there are so many choices already?


One reason is to establish a foothold on Java's market share.The other is that internally it uses Java a lot in its own infrastructure, especially its Azure ecosystem (Azure Spring Cloud, Azure App Service, Azure Functions, Azure Kubernetes), and for that it needs to have its own uniform and universal build applied to them.


Of course, there's also the promotional incentive of pushing Azure to Java's developers, with Microsoft trying to lure them in,  even helping them to migrate their applications through offering free courses, as described in "Learn How To Do Java On Azure", which shows how to build, migrate and scale Java application



full article on i-programmer:

https://www.i-programmer.info/news/80-java/15701-microsoft-goes-all-out-on-java.html 

Comments

Popular posts from this blog

pg_ivm - Materialised Views On Steroids

 pg_ivm is an extension module for PostgreSQL 14 that provides an Incremental View Maintenance (IVM) feature.That means that materialized views are updated immediately after a base table is modified. pg_ivm gives answer to the age old problem of when to refresh the materialized view. As a refresher or reminder, a materialized view versus a normal view is that the former keeps a copy of the data referenced to speed up querying since you actually query that copy, while the latter performs a live query every time. That might be great, but not ideal as you have to decide when to refresh that copy in order to avoid querying stale data.Until now in Postgres this could be done when running the command REFRESH MATERIALIZED VIEW. But again, when is the right time to run it, given the performance aspect of the time it takes for the operation to complete? full article on i-programmer: https://www.i-programmer.info/news/84-database/15470-pgivm-postgres-materialised-views-on-steroids.html

Fable - Write Front-end apps for the Web in F#

 How would it sound to be able to write front-end apps for the Web in  functional style and with type safety? Enter Fable, a F# to Javascript compiler with both those in mind. Fable transpiles F# to ES2015 JavaScript so code written in F# can run anywhere JavaScript runs - the browser, Node.js, Electron,React Native or generally V8. Yes of course with Typescript you can have type safety when transpiling to Javascript and since Fable does the same for F#, in terms of performance they should be equivalent. The difference is in the language itself. Although F# is a multi-paradigm language, it's big advantage is its concise syntax which renders it much easier to read and comprehend, and its default properties of immutability, rich types which let you easily represent your data or your domain and powerful pattern matching abilities for defining complex behaviors. full article on i-programmer.info: https://www.i-programmer.info/news/87-web-development/14969-fable-write-front-end-apps-for

Making GraalVM Based Executables Easy with Liberica Native Image Kit

  Liberica Native Image Kit is a utility for making native images for the JVM, letting you compile applications to executables using the GraalVM native-image compiler. As a refresher on what a native image is Native image is the executable binary file that contains your application, all its dependencies, and runtime components, allowing you to run your JVM based program on any supported configuration without the need for installing runtime or any setup. Native image is the easiest way to distribute your program and start it up faster. Native images have several advantages over JVM interpreted applications:  Almost instant startup time Optimized resource consumption and smaller static footprint Does not require JVM for execution  But why go for GraalVM over packaging your app with say Launch4J or javapackager?  full article on i-programmer: https://www.i-programmer.info/news/80-java/15284-making-graalvm-based-executables-easy.html