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 ]

Predicting contract length with probabilistic programming

Categories

Tags big-data data-science miscellaneous how-to

An article by Antoine Hachez about Jobandtalent experience with applying Artificial Intelligence (AI) to real business problems.

One of the key metrics in this industry is obviously the length of the contracts as it is proportional to the revenue per contract, which is compared to the fixed and variable costs of managing it.

The article describe how their data team tackled a challenge:

  • The modeling process
  • Modeling over time
  • Probabilistic programming – the simple model
  • Probabilistic programming – the time-dependent approach
  • Project evolution and conclusion

They describe how their approach is flexible and how they quickly iterated to create the KPIs that would fit our needs (actionable and unbiased by outliers). The Bayesian approach offers many advantages in this regard. Great read!

[Read More]

How to apply Lean Principles to your startup's productivity and time management

Categories

Tags agile frameworks miscellaneous software how-to

John Rampton wrote this article about how focusing on one thing at a time is a very good start to your productivity.

If you’ve recently launched a startup, author is sure that you’ve heard a lot about being “lean.” This article is not about the methodology popularized by the likes of Eric Ries. It is actually about the term and concept of “lean” that was originally developed by Toyota executive Taiichi Ohno during the reconstruction period in Japan following World War II.

The article captures:

  • The lean principles from a Toyota exec
  • Applying “lean” to productivity in startups
  • Improve your workplace using the five principles of lean
    • Value, Value stream, Flow, Pull, Perfection
  • Use the concept of 5S to get yourself organized
  • Standardize your work to become more efficient

… and much more in this eyes opening article. We liked:

Start by keeping a time log to see when you’re most productive and how you’re spending your time. You may notice that you’re most productive in the mornings. If so, that’s when you should work on your most important task.

One way you can improve flow in your startup is by focusing on one thing at a time. Great read!

[Read More]

Introducing Mocking Hans - An open source tool for creating fake APIs

Categories

Tags apis nodejs restful web-development

An article by Kevin about Hans. Hans is a small Node application for faking APIs - but not just a single REST API using HTTP. It allows for creating multiple APIs using different ports and protocols (like native WebSockets or even GraphQL). It supports multi-port/app API mocking, Express, Socket.io and native WebSocket.

On top of that it is written entirely in TypeScript which allows for some neat abstractions and sharing models between your real application and your fake API. And, of course, everything is licensed under MIT.

The article then quickly dives into details:

  • Basic example
  • How to use Adapters
  • Requests, Responses
  • Middleware
  • State

Small, nice library. Hans integrates Faker by default, providing useful methods for generating fake data. Link to repository provided.

[Read More]

Add serverless authentication with almost no code

Categories

Tags infosec serverless how-to

Robert J. Berger wrote this piece about a template of how to create a basic Re-Frame SPA with authentication from AWS Amplify with almost not coding and without having to set up your own backend authentication infrastructure.

The goal of this project is to show how to be able to use AWS Amplify with Clojurescript / Re-Frame Web Apps.

AWS Amplify makes it super simple to build Web and Mobile Apps that use the entire suite of AWS Services with minimal coding by the app developer. Clojurescript and Re-Frame make creating SPA apps a joy.

The article goes over:

  • Re-Frame / Clojurescript / Shadow-cljs
  • Assumptions, and initial setup
  • Ensure the basics are working
  • Set up AWS Amplify
  • Update the code to enable the Authenticator

Code is also provided together with detailed explanation. You can continue with this to use other AWS Amplify authentication features (Social Provider Federation, Multi-factor auth, etc) as well as the other Amplify services such as graphql access to DynamoDB, Push notifications, etc.). Nice one!

[Read More]

Build and secure a GraphQL server with Node.js

Categories

Tags javascript infosec web-development nodejs nosql

A tutorial from the pen of Roy Derks. Learn how to handle authentication and authorization of a GraphQL server using Node.js and JWTs.

GraphQL has grown from a new technology into a mature API specification, which is used by both small and big tech companies worldwide. Using a type system, it lets you query and mutate data using a simple and understandable format.

You will learn how to build a GraphQL server and consequently secure it using Auth0. The article covers:

  • Prerequisites
  • What is GraphQL?
  • Building a GraphQL Server with Node.js
  • Securing a GraphQL Server with Auth0

In this tutorial, you will create a GraphQL server with Node.js, that uses a mock MongoDB instance for its data and Auth0 for authorization and authentication. Detailed code examples are provided. Excellent read!

[Read More]

Pivotal Web Services, SSL, and a Custom Domain

Categories

Tags web-development serverless nodejs java kotlin programming

Pivotal Web Services (PWS) is a great place to set up push button deployments. It’s cheaper than Heroku and has some great features. Typical Node application could cost you less than $3.00 to run per month. By Austin.

And there is an effortless way to get SSL up and running for free using CloudFlare. The article then quickly guides you through deployment of your first app:

  • Deploy something to PWS
  • Setup a custom route
  • DNS stuff

Code example for a super simple SpringBoot Kotlin application is also included. Short, but sweet!

[Read More]

Understanding garbage collectors

Categories

Tags java programming miscellaneous oop

Great explanation how the default garbage collectors work. Garbage collection (or GC) is an automated way to reclaim for reuse memory that is no longer in use. By Christine H. Flood.

Unlike other languages in which objects are allocated and destroyed manually, with GC, Java programmers don’t need to pick up and examine each object to decide whether it is needed. Instead, the omniscient GC housekeeper process works behind the scenes quietly discarding objects that are no longer useful and tidying up what’s left. This decluttering leads to an efficient program.

The article does a great job explaining:

  • What is garbage collection?
  • Parallel garbage collector
  • Garbage-first garbage collector
  • Shenandoah garbage collector

Also note that since this article was first published, GC in the JDK has evolved in new ways. Nice work!

[Read More]

An overview of server-side HTTP APIs in Go

Categories

Tags golang programming apis web-development

An tutorial by Abhishek Gupta in which he explores the net/http package in Golang which provides the server and client-side APIs for HTTP services.

This is another piece in a series on the Go programming language which covers some of the most commonly used Go standard library packages: encoding/json, io, net/http, sync, etc.

In this article you will learn about the fundamental building blocks, ServeMux and Server:

  • ServeMux (Multiplexer)
  • Server (HTTP server)
  • Functions as handlers

Nice read! You would cover the basic constructs of the server-side HTTP APIs offered by the net/http package. You will also have access to the all of the code examples on GitHub.

[Read More]

How does Alibaba ensure performance of system components in a 10,000-node Kubernetes cluster?

Categories

Tags devops kubernetes cloud containers software-architecture

The production environment of Alibaba consists of more than 10,000 containerized applications, with the entire network of Alibaba being a massive system using millions of containers running on more than 100,000 hosts. This is how they run it. By alibaba.com.

When running common loads in the simulated cluster, the team encountered extremely high latency, up to 10s in fact, for some basic operations such as pod scheduling. Moreover, the cluster was also unstable.

The article then describes, how:

  • Storage capacity of etcd was improved by separating indexes and data and sharding data. The performance of etcd in storing massive data was greatly improved by optimizing the block allocation algorithm of the bbolt db storage engine at the bottom layer of etcd. Last, the system architecture was simplified by building large-scale Kubernetes clusters based on a single etcd cluster
  • List performance bottleneck was removed to enable the stability of operation of 10,000-node Kubernetes clusters through a series of enhancements, such as Kubernetes lightweight heartbeats, improved load balancing among API servers in high-availability (HA) clusters, List-Watch bookmark, indexing, and caching
  • Hot standby mode greatly reduced the service interruption time during active/standby failover on controllers and schedulers. This also improved cluster availability
  • Performance of Alibaba-developed schedulers was effectively optimized through equivalence classes and relaxed randomization

Excellent read, well worth your time!

[Read More]

How a single Raspberry Pi made my home network faster

Categories

Tags software iot software-architecture learning

The Pi Hole project adds an entire new level of performance and security to our home network. Powered by Docker and a Raspberry PI I can now block all unwanted Ads and Metrics network wide. By Brian Christner.

The author used Raspberry Pi project Pi Hole as the gatekeeper to his home network.

The Pi Hole answers your computer’s DNS queries and if it is a domain on the blacklist, it sends the request to the Pi Web server. This Web server just serves up a blank page. So instead of loading the ad from the real domain, the blank page from the Pi is downloaded, thus “blocking” the ad or metric.

The article then describes:

  • Installing Pi Hole – everything in a Docker container
  • Pi Hole in Operation
  • Review after 1 month in operation

The Pi has been chugging along at 8% memory utilization, and the network is considerably faster when surfing the web. Statistically speaking author’s household averaged 15% of queries blocked and a spike over a bad weather weekend of 30% blocked. Nice one!

[Read More]