Welcome to curated list of handpicked free online resources related to IT, cloud, Big Data, programming languages, Devops. Fresh news and community maintained list of links updated daily. Like what you see? [ Join our newsletter ]

Using generative AI to write code: A guide for researchers

Categories

Tags ai cloud programming app-development management miscellaneous

Generative AI is increasingly used to draft, edit, annotate and debug code. It’s not just industry software developers who are taking advantage of the tools it has to offer. Those who develop and use software for academic research are benefitting from them too. So how do you make the best use of generative AI for coding in a research context? As software engineers with The Alan Turing Institute’s Research Engineering Group (REG) and PhD Enrichment scheme, we’ve been asking ourselves just this question. Here, we share our thoughts, along with some tips for researchers. By Ed Chalstrey and Anastasiia Grishina.

The article answers these questions:

  • How can generative AI help?
  • Which tools can I use?
  • What tasks can I get help with?
  • What should I be wary of?

In the same way that generative AI tools like ChatGPT and Midjourney can be used to generate or modify written text, images or video – based on a “prompt” – they can be used to generate or modify code. For example, using a section of code as a prompt, you can add “explain each line of this code”, to which the AI will respond with a line-by-line explanation, perhaps modifying the code itself with helpful comments. These new tools can help to reduce the time spent trawling through search engine results, reading online tutorials and posting coding questions on websites like Stack Overflow. For researchers, they mean less time spent learning to code and more time on the research questions at hand. Nice one!

[Read More]

Java 21 features: A detailed look at the most important changes in the new LTS release

Categories

Tags jvm cloud web-development app-development java

Another LTS Java release is already here, bringing some exciting changes and improvements. Let’s analyze the most important Java 21 features, check out how they work in practice, and try to predict their significance for the future of this technology. By Arkadiusz Rosłoniec.

Since the Java platform adopted a six-month release cycle, we’ve moved past the perennial questions such as “Will Java die this year?” or “Is it worth migrating to the new version?”. Despite 28 years since its first release, Java continues to thrive and remains a popular choice as the primary programming language for many new projects.

The article then highlight several Java 21 JDK Enhancement Proposals (JEPs) that author believes are particularly noteworthy:

  • String Templates
  • Sequenced Collections
  • Pattern Matching for switch and Record Patterns
  • Virtual Threads

Most of features aren’t as groundbreaking as some of the things introduced in JDK 17, but they’re still very useful, and nice to have QOL (Quality of Life) changes. Overall, the advancement Java made in various areas signals the team’s ongoing commitment to improving efficiency and performance in high-demand applications. Good read!

[Read More]

Cloud computing statistics that will blow your mind

Categories

Tags cloud open-source app-development cio management

Discover over 55 cloud statistics, including stats around forecasts, cloud waste reports, cloud cost optimization efforts, and data on hybrid cloud adoption rates. By Cody Slingerland.

The trend continues to accelerate – even faster now. Cloud computing was already booming before 2020. But in the following two years, remote work flourished, and cloud adoption soared.

Yet there’s more to the rise and rise of cloud computing than remote working. For example, cloud infrastructure also supports big data analytics, Artificial Intelligence (AI), Machine Learning (ML) models, the Internet of Things (IoT), and advanced Business Intelligence (BI). So, we compiled the following remarkable cloud computing statistics from reliable sources to help you keep up-to-date.

Some of the stats mentioned:

  • Globally, the cloud computing market will surpass $1 trillion by 2028. (Precedence Research)
  • The global cloud computing market grew from $24.63 billion in 2010 to $156.4 billion in 2020. That’s a 635% jump.
  • Only 3 out of 10 organizations know exactly where their cloud costs are going (CloudZero, The State Of Cloud Cost Intelligence 2022 Report)
  • A cloud bill can comprise hundreds of millions or billions of rows of data (FinOps Certification)
  • An Amazon Cost & Usage Report is too large to load into Excel all at once. Instead, Amazon splits its monthly CUR into many separate files. Good luck understanding them. (FinOps Certification)
  • You can reduce your Total Cost of Ownership (TCO) by as much as 40% by migrating your business to the public cloud (Accenture)

Authors have also included tips, tricks, and tools to make cloud computing work for you. Yes, that includes practical tips on how to manage and optimize your cloud costs across AWS, Azure, GCP, Kubernetes, and Snowflake within a single platform. Nice one!

[Read More]

Setting up Nix on macOS

Categories

Tags linux open-source app-development performance

I recently bought a Macbook because more and more people are asking me how to use Nix in certain situations under MacOS. In this article, we walk through installing Nix on MacOS and see how pleasant the experience is these days. In this article, we walk through installing Nix on MacOS and see how pleasant the experience is these days. After that, we show how to go declarative on MacOS with nix-darwin to enable compilation for Linux and Intel Macs, as well as some other nice features. By Jacek Galowicz.

In this guide you will learn:

  • Why would one want to have Nix on a Mac?
  • Step 1: Installing Nix on macOS
  • Step 2: Going declarative with nix-darwin
    • Additional nix-darwin goodies
    • Unlocking sudo via fingerprint
    • Setting System Defaults
    • Apple Silicon Macs: Compile Intel Binaries
    • Building Linux binaries
  • Updating the System

Some Apple fans might like setting up a new system each time, but most of us want things to be simple and in sync. Good read!

[Read More]

mass-prebuild: An open source journey of improvement and growth

Categories

Tags linux open-source app-development learning cio

Welcome back to our blog series about the evolution of mass-prebuild. In our first post in 2022, we introduced this powerful open source tool designed for streamlining package builds across multiple architectures and Linux distributions. This article continues that journey, exploring how mass-prebuild has been continually refined, improved, and grown in response to user feedback and technological advancements. By Frédéric Bérat.

The Mass Prebuilder (MPB) is a set of tools aimed to help the user to create mass rebuilds around a limited set of packages, in order to assess the stability of a given update.

This article also describes:

  • Recap: What is mass-prebuild?
  • Navigating the path to stability: The early days of mass-prebuild
  • Expanding horizons, accelerating growth: Innovations and upgrades
  • Bug fixes, enhancements, and new features: The continued evolution
  • A milestone with GCC 14: Uncovering critical issues through comprehensive rebuilds

Throughout its remarkable evolution, mass-prebuild has become an indispensable tool to assess the stability of a given component update. By incorporating numerous improvements, updates, bug fixes, and new features, it has solidified its position as a vital resource within the open-source community. Yet, there will be some improvement coming for the tool. An example of this is the backends. The mass-prebuild currently supports COPR and mock for the builds, support for Koji is still not yet integrated and will be part of a future release. Interesting read for any open-source builder!

[Read More]

Kotlin: A step-by-step guide for first-time app developers

Categories

Tags java jvm app-development kotlin programming

Welcome to the world of Kotlin, a modern programming language that has captured the hearts of developers worldwide, especially in the realm of Android app development. JetBrains developed Kotlin, and since its release in 2011, it has seen a rapid rise in popularity. In 2017, Google announced first-class support for Kotlin on Android, and since then, there has been no looking back. By @appmaster.io.

The guide then describes in some detail:

  • Setting up your development environment
  • Choosing the right Integrated Development Environment (IDE)
  • Installing the Kotlin plugin
  • Configuring the Kotlin compiler
  • Exploring the project structure
  • Setting up version control
  • Understanding emulators and real device testing
  • Your first Kotlin application
  • Understanding Kotlin syntax and commands
  • Debugging and testing your Kotlin app

… and more. Embracing Kotlin as your programming language for Android app development can be an exciting step in your coding journey. Kotlin’s expressive syntax and safety features can make your development process both enjoyable and productive. Here we provide some essential tips to further enhance your efficiency while developing Kotlin apps. Nice one!

[Read More]

Performance optimization techniques in Angular

Categories

Tags angular javascript web-development nodejs

The performance of any application plays a vital role in the growth of the business. As it is a high-performing front-end framework, we face challenges optimizing the performance. The major performance issues are the decline in traffic, decrement in engagement, high bounce rate, and crashing of applications in high usage. By @xenonstack.com.

Further in this article:

  • How Angular compiles and its performance?
  • What are the types of Compilation and its description?
  • Why performance optimization is necessary?
  • How to solve performance optimization issue?
  • Methods of performance optimization techniques

The performance and the load time play an essential role in any business. This post showed how using the right compilation methods and techniques can improve the application’s performance. We saw how using change detection, lazy loading, and web workers helped us achieve great performance. Before using any of the above techniques, we must first understand the reason behind the lagging performance. So, the right approach will help us to achieve our goal. Nice one!

[Read More]

A comprehensive guide to choosing the best Scala course

Categories

Tags scala app-development learnings java programming akka

This article is all about choosing the right Scala course for your journey. It worth noting that author has made almost 300 hours of courses so far at Rock the JVM. By Daniel Ciocîrlan.

Further in this article you will learn:

  • How to Learn Scala as a beginner
  • What should I look for in a Scala course?
  • What’s the best Scala course for beginners?
  • How to learn Scala as an intermediate-advanced user
  • What libraries to learn as a Scala developer
  • Learning path for Scala developers

This article is a comprehensive guide to what you should learn to master Scala. We discussed some essential topics that every Scala developer needs to know, in what order, and which resources to use to learn Scala quickly. We also explored the most important libraries and tools in the Scala ecosystem, as well as a sequenced learning path to becoming a full-blown Scala developer. Good read!

[Read More]

IoT gateways explained: A detailed guide for 2024

Categories

Tags app-development management iot performance startups devops

If you work with IoT, you probably know how challenging it may be to manage Internet-of-Things (IoT) devices effectively. This challenge grows as more diverse gadgets and sensors join your ecosystem. And that’s where the IoT gateway steps in. By Kostiantyn Oliynyk.

An IoT gateway, an often overlooked but critical Internet of Things component, is pivotal to running devices and systems smoothly. Think of it as a bridge that connects various communication technologies to the cloud. Valued at $1.77 billion in 2024, this tech transforms smart devices into full-fledged, functional IoT solutions.

Further in the article:

  • Understanding IoT Gateways
  • IoT Gateway Architecture overview
  • Communication protocols in IoT Gateways
  • Features of IoT Gateways
  • IoT Standard Protocols and Data Formats
  • IoT Gateway use cases
  • Applications of IoT Gateways

… and more. IoT gateways are the glue of modern IoT ecosystems. They facilitate seamless data exchange, enable connectivity, and streamline data collection and processing. Good read!

[Read More]

Flutter vs. Kotlin: An overview in 2024

Categories

Tags app-development frontend android java learning kotlin

Let’s compare Flutter and Kotlin a little more directly, based on a number of key factors. By Flatirons.

Kotlin Multiplatform, an extension of the Kotlin programming language, presents a compelling alternative comparable to Flutter in the realm of cross-platform development. It enables developers to seamlessly share and reuse code across a diverse range of platforms, such as Android, iOS, web, and desktop. This feature of Kotlin Multiplatform is particularly advantageous for writing and maintaining common business logic and data processing code, as it allows these components to be written just once and then efficiently deployed across various platforms.

This article then provide information on following topics:

  • What is Flutter?
  • What is Kotlin?
  • What is Kotlin Multiplatform?
  • Flutter vs. Kotlin breakdown
  • When is Kotlin better than Flutter?
  • When is Flutter better than Kotlin?

In essence, Kotlin is the ideal choice for projects that demand comprehensive Android functionality and benefit from a team with Java experience. However, for broader cross-platform needs or when the focus is on rapid development and deployment across multiple platforms, Flutter still stands out as a more fitting option. Consider your project’s specific requirements and your team’s expertise to make the most informed decision.

In summary, Flutter is the go-to framework for scenarios that demand rapid development, aesthetically pleasing UIs, and cross-platform functionality, especially when the project does not require intensive use of platform-specific Android features. Its capacity to swiftly produce quality apps for both Android and iOS makes it an appealing choice for a wide range of development projects. Good read!

[Read More]