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 ]

TypeScript 5.2 beta brings explicit resource management

Categories

Tags nodejs javascript web-development programming

Forthcoming update to Microsoft’s strongly-typed JavaScript also backs decorator metadata for consuming metadata on classes. By Paul Krill.

The next planned update of Microsoft’s strongly typed JavaScript, TypeScript 5.2 supports the explicit resource management feature planned for JavaScript’s ECMAScript standard. The next planned update of Microsoft’s strongly typed JavaScript, TypeScript 5.2 supports the explicit resource management feature planned for JavaScript’s ECMAScript standard.

Decorator metadata, also an upcoming ECMAScript feature, is intended to make it easy for decorators to create and consume metadata on any class they are used on or within. An all-or-nothing restriction on the use of tuple labels has been lifted. The language now can preserve labels when spreading into an unlabeled tuple.

Object member completions are provided when a comma is missing. Previously, if a comma were forgotten and auto-completion requested, TypeScript would confusingly give unrelated completion results. Interesting!

[Read More]

How to make engaging programming videos

Categories

Tags open-source miscellaneous web-development programming

Programming videos have become an increasingly popular medium for sharing knowledge and helping the fellow developers on your team. Especially when you’re working remotely, effective communication is vital, and screencasts have emerged as a powerful tool that meets this need. That’s why knowing how to make programming videos is a valuable skill, no matter where you are in your career. By Philipp Acsany.

However, not all videos are equally effective. To create engaging and informative programming screencasts, you should keep some important details in mind. This in depth article then explains:

  • Decide when a programming video makes sense
  • Sketch out code examples
  • Take speaker notes
  • Audit your setup
  • Clean up your coding environment
  • Record your programming video
  • Edit and review your programming video

Before diving into the actual recording of your programming video, it’s a good idea to make a test run. Taking the time to do a test recording helps ensure optimal audio and video quality, setting the stage for a seamless viewing experience. While it may require a bit of extra time up front, the benefits are worth it. A test recording allows you to identify any potential issues with audio clarity, video resolution, or screen visibility.

Now you’re ready to dive into the world of screencasting and create your own programming video tutorials. Whether you’re enhancing documentation, exposing bugs, or simplifying complex processes, screencasts offer a unique way to communicate with your peers. Nice one!

[Read More]

Qubit quest takes a topological turn

Categories

Tags miscellaneous performance machine-learning data-science big-data

Google and Quantinuum bring a new, promising particle into the quantum computer road map. Two teams of researchers have used topology, a centuries-old field of mathematics, and a new kind of “quasiparticle” to come up with an error-correction technique for quantum computers that could leave others developed to date in the bin. By Margo Anderson.

Error-correction systems are essential to quantum computers, because the unprotected quantum bit (qubit) is such a perpetually delicate thing—often a single particle or quantum state that is forever at the mercy of thermal or random noise in the system. And because qubits are typically quantum mechanically interconnected with one another—to use the jargon, qubits are typically entangled—knocking just one or two out of commission can affect the whole system.

Further in the article:

  • New states of matter for solving old problems
  • What does a topological quantum computer look like?

The qubits are essentially inductor-capacitor oscillators, says Google Quantum AI team member Trond Andersen of the qubits in the Google system. “But they are made with Josephson junctions. And the beauty of them is when we cool them down, we can see the quantized levels of this oscillator. And those quantized levels are what we use as our zero and one.” Super interesting read!

[Read More]

Ericsson to WhatsApp: The story of Erlang

Categories

Tags frameworks performance app-development elixir erlang functional-programming

In this post, we’re going to look at a piece of technology that was banned by the company that created it. It was kept alive by a small team of enthusiasts. Then, almost thirty years after its first development, it became the core technology underpinning one of the most important and lucrative startups of the 2010s. By Babbage.

This is our first post on a programming language. Except it isn’t entirely about software, it’s about how software can make the most of the hardware resources available and the links between the hardware of computing and that of telephony. So, what is Erlang, how did it come into being, and why has it had a renaissance recently? The article describes:

  • Ericsson
  • Ericsson Computer Science Laboratory
  • What was Erlang?
  • The Collapse of AXE-N
  • Ericsson Ban
  • Open Source Erlang
  • WhatsApp
  • Elixir

Erlang continues to be developed and supported by individuals and teams both inside and outside Ericsson. In 2022, it received a notable update that speeded up the execution of Erlang programs significantly through the introduction of an updated ‘just in time’ compiler. Interesting read!

[Read More]

A glance at the Java performance toolbox

Categories

Tags frameworks performance app-development jvm java

Performance tuning starts with analysis, and JDK tools can help you gain insights on classes and threads and can perform live GC analysis or heap dump postprocessing: jcmd, jconsole, jstat, jmap and jfr. By Ana-Maria Mihalceanu.

We’ll examine the functional visibility areas essential to Java and how these tools provide that information. Moreover, will discuss options on how to integrate information gathered from these tools with widespread monitoring systems like Prometheus.

After this talk, you will be ready to understand what your application spends time on and why so you can start improving its performance with complete information. Watch the video to learn more. Nice one!

[Read More]

How to use PyScript – A Python frontend framework

Categories

Tags frameworks web-development app-development frontend

Python has grown in popularity immensely in recent years. It has a wide range of applications, from its most popular use in Artificial Intelligence, to Data Science, Robotics, and Scripting. Anaconda announced a framework named PyScript that allows you to use Python on the web using standard HTML. By Ifihanagbara Olusheye.

PyScript is a Python front-end framework that enables users to construct Python programs using an HTML interface in the browser. Further in the article:

  • Why PyScript?
  • How to Get Started with PyScript
  • More Operations with PyScript
  • Run REPL in the browser

PyScript provides an interface for running Python code in browsers. With PyScript, it’s easier to run and perform Python operations on the web, as this wasn’t easy before. This is a great tool for anyone who’s looking forward to using Python on the web. Good read!

[Read More]

Delivering messages at the scale of the World Cup

Categories

Tags messaging cloud queues nosql microservices

Events like the World Cup bring together a huge number of fans like Alex all over the world. The biggest challenge in maintaining such a service is scale. The type of traffic for such events can be extremely spiky. A very steady traffic volume can suddenly spike when Mbappe scores the goal that ties the game. Suddenly, FCM needs to notify 250M users about this event. By Michelangelo Mecozzi.

To prepare for an event of this size, Firebase Messaging implemented several changes and best practices that we want to share with the rest of the engineering community. Hopefully, lessons learned here will help you prepare your infrastructure for the next big event. The article then delve into:

  • Understanding the traffic
    • Using the past to predict the future
  • Capacity planning
  • Load balancing
  • Defense in depth
  • Cluster scaling
  • Load tests

Managing high spikes in traffic is certainly no easy task. But equipped with the right best practices and the most effective mitigation strategies, you will be in the best position to handle large traffic volumes. Very interesting!

[Read More]

Character sets and collations in MySQL

Categories

Tags web-development app-development mysql database how-to

Understanding the differences between character sets and collations in MySQL. Character sets and collations are fundamentally important concepts to understand when dealing with string columns in MySQL. A slight misunderstanding of either can lead to poor performance or unexpected errors when inserting data. By planetscale.com.

The article then goes over (with examples):

  • Character sets in MySQL
  • How do you define a character set?
  • Collations in MySQL#
  • How do you define a collation?#

MySQL supports a wide range of character sets, which you can view by selecting from the information_schema database. There are a few ways to define the character set of a column. If you don’t specify a character set at the table or column level, the server default of utf8mb4 will be applied (unless you’ve explicitly declared a different server or database default).

While character sets define the legal characters that can be stored in a column, collations are rules that determine how string comparisons are made. If you are sorting or comparing strings, MySQL uses the collation to decide the order and whether the strings are the same. Understanding character sets and collations is fundamental when dealing with string data in MySQL. A character set defines the legal characters that can be stored in a column, while a collation determines how string comparisons are made. Good read!

[Read More]

PayPal open sources key-value store JunoDB

Categories

Tags open-source performance web-development app-development database

PayPal last month released the source code for JunoDB, a distributed key-value store it developed internally and which today powers a variety of backend services at the payment site, including 350 billion transaction requests per day, the company says. By Alex Woodie.

JunoDB was originally developed over a decade ago in C++ to address the specific needs of the company. Since no commercial or open-source solutions were available to handle the required scale out-of-the-box, we developed our own solution to adopt a horizontal scaling strategy for key-value stores.

The new database would addresses two primary scaling needs in distributed key-value stores. Handling the a large number of client connections, and handling growth in read and write throughput. PayPal database developers created JunoDB with a proxy-based architecture to enable horizontal scaling. The JunoDB client library, which resides in the application, was developed to enable simple data actions through the JunoDB proxy, which manage requests from the clients, coordinates with the data stored on the JunoDB storage server, and provides load balancing. All data is encrypted, either at the client or the proxy layer using TLS; all stored data is also encrypted using TLS.

JunoDB utilizes consistent hashing to partition data and minimize data movement. To support horizontal scale, it shards data among a number of database partitions located on server nodes. JunoDB has since been rewritten in Golang to provide multi-threading and multi-core capabilities. With JunoDB’s data replication methods, including within-data center and cross-data center replication, the key-value store delivers six 9’s of system availability for PayPal. Interesting read!

[Read More]

Develop data visualization interfaces in Python with Dash

Categories

Tags python programming web-development frameworks analytics

In the past, creating analytical web applications was a task for seasoned developers that required knowledge of multiple programming languages and frameworks. That’s no longer the case. Nowadays, you can make data visualization interfaces using pure Python. One popular tool for this is Dash. By Bob Pacheco.

Dash gives data scientists the ability to showcase their results in interactive web applications. You don’t need to be an expert in web development. In an afternoon, you can build and deploy a Dash app to share with others. Dash is an open-source framework for building data visualization interfaces. Released in 2017 as a Python library, it’s grown to include implementations for R, Julia, and F#. Dash helps data scientists build analytical web applications without requiring advanced web development knowledge.

The article then explains in detail:

  • What is Dash?
  • Get started with Dash in Python
  • Style your Dash application
  • Add interactivity to your Dash apps using callbacks
  • Deploy your dash Application to PythonAnywhere

You can use Dash to build analytical applications to share with others. As more companies put more weight on the use of data, knowing how to use Dash will increase your impact in the workplace. What used to be a task only experts could perform, you can now do in an afternoon. Excellent read!

[Read More]