Bright Devs Blog

Your first unit tested Ethereum Smart Contract

Your first unit tested Ethereum Smart Contract

smartcontract ethereum blockchain truffle web3js parity unittests

The goal of that blog post is to provide you with the exact steps how to start creating your first unit tested smart contract.

Your first unit tested Ethereum Smart Contract
Important: do not overuse !important

Important: do not overuse !important

css important html stylesheet

You have created your CSS rule and found out that it didn’t take a desired effect. You checked the CSS selector and HTML code again to check if they correspond. Or you just opened the developer console in your browser, inspected the element and checked if your CSS rule was present in the styles list. It turns out that it is there, but the declarations are strikethrough. This means you have just encountered some kind of CSS specificity issue. You could just add the !important flag to your declarations and have it done. Is it a good solution? Never. I do not say you should never use !important though. What I really want to say is that you should never use !important if you are not aware of the consequences.

Important: do not overuse !important
HTTP request logging in Node.JS

HTTP request logging in Node.JS

node.js logging

One of the most basic kind of logging every backend application should have is a trace logging of all incoming HTTP requests. Yet it's not easy to make it right and useful. Let me show you what we have learned and what we do to ensure our logs are meaningful and useful.

HTTP request logging in Node.JS
TeamCity for iOS project

TeamCity for iOS project

iOS swift Fastlane TeamCity continuous integration

Hi! Today's topic will be about TeamCity and how to provide continuous integration in your iOS project.

TeamCity for iOS project
HTTP client timeouts

HTTP client timeouts

http timeout network rest api

We have already touched upon the importance of timeouts and described most important related JDBC knobs. The next aspect of timeouts I would like to focus on is using API clients. Specifically HTTP clients which are by far the most popular. We will review couple of popular HTTP client libraries and their configuration regarding timeouts.

HTTP client timeouts
call(), apply() and bind() Methods in JavaScript

call(), apply() and bind() Methods in JavaScript

javascript bind apply call

Working with JavaScript ‘this’ keyword can be tricky. Not knowing the background rules may end up with the famous “it doesn’t work and I don’t know why”. It’s good to know the theory before putting things into practice. ‘call()’, ‘apply()’ and ‘bind()’ methods can come in handy while setting the ‘this’ value.

call(), apply() and bind() Methods in JavaScript
Working with iOS in-app purchases

Working with iOS in-app purchases

ios in-app purchases itunes connect subscriptions swift

There are more pleasant things to do in iOS development than setting up and testing in-app purchases. The process is laborious and requires thorough testing, especially that in-app purchases are crucial from a business perspective.

Working with iOS in-app purchases
The human side of software development

The human side of software development

culture career stress

Getting into the world of software development can be a really demanding task. Introducing clean code, providing tests to your solution, using the right tool for the job, keeping up with latest trends... these are all things that you were most probably told about at the time that you barely knew what programming was. It seems that many people tend to neglect the side of development that hasn't got too much to do with machines...

The human side of software development
Dockerizing Android builds

Dockerizing Android builds

android build docker

Docker is a great container platform that helps building a true independence between applications, infrastructure and developers. It provides an isolation which supports building modern continuous integration environments with ease and at low cost.

Dockerizing Android builds
Database timeouts

Database timeouts

database timeout jdbc query transaction

Last time I have outlined the importance of timeouts. Without a carefully considered timeouts our application can become unresponsive easily. In this post I will focus on configuring various timeouts related to interaction with database. I am going to focus specifically on relational databases. The principles and practices however can be applied equally well to other types of databases.

Database timeouts