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 ]

Developing a Spring boot app on Docker: the AtSea demo app

Categories

Tags docker microservices

Sophia Parafina short blog post - the first of a series of blog posts that demonstrates using Docker to develop a typical web application and deploying it in production.

Post describes how to build a demo application that would demonstrate the flexibility of using Docker in development as well as showcase the features of Docker in a production environment.

A hybrid architecture chosen - typical Java n-tier architecture. It uses Spring Boot’s web MVC framework for the REST API and Spring Data to manage database operations. They chose PostgreSQL for the database.

All code available from github. If you new to docker this is worth reading.

[Read More]

Crash course to Amiga assembly programming

Categories

Tags programming

Tuomas Järvensivu article bringing back memories on Amiga. Amiga as an environment is much simpler than (for instance) modern PCs. This makes learning low-level programming on it faster than on more complex environments.

You will need at least one at least one Kickstart ROM image and one Workbench floppy disk image. How exciting!

Also in article detailed description of:

  • how to use emulator
  • how to compile code
  • how to debug
  • how to start your application

Amazing. Good reading.

[Read More]

Testing Machine Learning Algorithms with K-Fold Cross Validation

Categories

Tags machine-learning big-data

Norbert Krupa wrote blog post on choosing a machine learning algorithm, then using a validation technique. He uses Talend Studio without hand coding.

Taking the example of predicting a user’s activity based on mobile phone accelerometer data, we must be able to classify a category for the data (resting, walking, or running).

This classification exercise presents common algorithms such as Logistic Regression, Decision Tree, Random Forest, and Naïve Bayes. In K-Fold Cross Validation, the training dataset is partitioned into two pieces: training and test, where K represents the number of folds or observations to take place.

Interesting article, with how to steps and loads of screenshots.

[Read More]

Brain on code - functional MRI Imaging

Categories

Tags programming

Older article by Tina Amirtha on topic how human brain interprets coding. Researchers at the University of Passau have looked into the brains of programmers, using the imaging tools of neuroscience. You can find the study here in PDF form.

Each person (university students) read several different Java code snippets of similar difficulty so that the researchers could average the resulting brain imaging data.

So, does computer programming fall into the languages subject area?

“It appears to make some sense, based on what we have learned from the study,” Siegmund says.

[Read More]

Managing Shared Secrets

Categories

Tags infosec programming

Jakob Holderbaum article about managing shared secrets when working on a shared codebase. Handling such secrets in a working team and during deployments can be a challenging and sometimes even intimidating task.

Few approaches are considered and trade-offs are mentioned:

  • simply having constants in your source code.
  • storage of secrets in configuration files not checked into version control
  • or use of environment variables
  • GPG and password manager pass (*nix systems)

Password manager pass on the other hand is a neat little utility that basically comprises a convenient wrapper around GPG.

An example application code with detailed explanation how to set up secure keys for pass to work is included.

[Read More]

The shocking secret about Static Types

Categories

Tags programming functional-programming

Eric Elliott has written excellent article about static types and why the feeling that they make us more productive may be wrong.

He points out that static types give you a false sense of security, despite undeniably true fast that static types catch a significant subclass of bugs.

He also notes that type correctness does not guarantee program correctness. Also offers answer to the question what really does reduce bug density… Test Driven Development (TDD). Specifically, test-first methodology.

He also mentions The Springer study – it showed 40% - 90% reduction in bug density relative to similar projects that did not use the test-first practice.

[Read More]

How to build a full-page website in Angular

Categories

Tags angular javascript

Lukas Ruebbelke in depth tutorial will walk you though process of creating fully functioning website using latest Angular.

This is the first part in a series on how to build a full-page animated website in Angular and includes source code in github repository. It walks you through:

  • how to create project with @angular/cli
  • how to include animations and Angular material
  • how to introduce a page component and build it
  • how to introduce generate the content service
  • how to setup routing

and more … Really good intro into building web apps with Angular.

[Read More]

gRPC-Web: Moving past REST+JSON towards type-safe Web APIs

Categories

Tags microservices restful apis

Michal Witkowski and Marcus Longmuir wrote blog post on their experiece with gRPC in order to create type safe web APIs.

This blog post presents how Improbable expanded use of gRPC, the lingua franca for their microservice and client libraries, towards use in browser Web Apps. They also show how this move, together with their adoption of TypeScript in order to end up in type-safe Web App Nirvana.

Article explains what gRPC is and why they decided to use it. gRPC is the next-generation of Google’s in-house RPC library based on the HTTP2 protocol with support for code-generating clients and server stubs in multiple languages. At the same time they leveraged backwards and forwards compatibility of protocol buffers - language-neutral, platform-neutral, extensible way of serializing structured data for use in communications protocols.

In depth article with details how their usage of gRPC extened: they first used gRPC REST Gateway for using gRPC from the browser, later hacked modern browser to communicate via binary protocol buffers.

Code examples and links to open sourced repositoy included.

[Read More]

Testing Microservices – A Beginner's Guide

Categories

Tags microservices software-architecture

Amir Ghahrai’s article aimed at microservices beginners and importance of testing. Microservice is defined as an architectural style, an approach to developing a single application as a suite of services.

Testing Microservices is becoming more and more important as many of the new applications are being built using Microservices architecture. Article also explains how are microservices different to SOA.

The main part about testing of microservices describes:

  • unit tests
  • component tests
  • integration tests
  • contract tests

The challenge of the mocking/faking 3rd party APIs when doing integration testing of microservices is mentioned too.

[Read More]

How To Build Android Apps with Jenkins

Categories

Tags app-development cicd devops

Digital ocean article you will learn how to setup Jenkins to build Android apps. It will mostly talk about the new build system called Gradle.

Article will guide you through:

  • Installation of Android SDK
  • Configuring the Android SDK
  • configuring Jenkins
  • Setting up the Job

The Jenkins instance can hold more than 1 job. And gradle can also sign the apps automatically. Complete example code for build is attached.

[Read More]