Mini-tutorial on Responsive Layouts – part 2

By Masha K.

Jan 4, 2018

This is part two of the mini-tutorial. It covers the negative margins, z-index and flexbox. Read part one here.

Positioning (continued)

Negative margins

Another positioning tool is margins with negative values: margin-top: -10px;. One could use a negative margin to:

  • To adjust the position of an element, for example, pull it up or left a few pixels. A common use case here is centering an absolutely positioned element with fixed width and height. Have a look at this square block:
div.modal {
  position: absolute;
  height: 100px;
  width: 100px;
Continue reading “Mini-tutorial on Responsive Layouts – part 2”

Mini-tutorial on Responsive Layouts – part 1

By Masha K.

Dec 29, 2017

This is part one of the mini-tutorial. It covers the box model and introduces the concept of positioning, together with three essential CSS properties: displayfloat and position. Read part two here.

Effectively using CSS and HTML to build responsive layouts seems to be a painful topic for everybody. Part of the problem is CSS itself. It’s not perfect, it has no error messages, it’s hard to debug and different browsers interpret it differently.

Continue reading “Mini-tutorial on Responsive Layouts – part 1”

Enhancing Test Suite Robustness

By. Guy Y.

Dec 14, 2017

There are a lot of great benefits from unit testing.

It’s important to keep in mind that as the code base changes over time, so does the test code.

Some tests are written as part of the TDD (test-driven development) methodology; some are added after to verify older code.

A good test suite is easy and fast to maintain, refactor and expand.

In this article, we’ll look at some common patterns that could add robustness to your test suites.

Continue reading “Enhancing Test Suite Robustness”

How to be a Better Junior: an Overview

By Masha K.

Nov 28, 2017

I realize that not a lot of actual first-time juniors will read this article. However, I’m convinced that anybody who works in a team and has to deal with people (either more experienced or less experienced) will find this text useful. So, here it goes!

Hey, have you just landed your first job in tech? First of all, congrats! Second of all, after the initial excitement passes, don’t panic. Everything’s gonna be fine. Yes, you don’t know these people with whom you share an open space; you’re not familiar with the project they’re expecting you to work on; you have no previous experience with the frameworks and languages used – that’s all fine. We all start somewhere.

Continue reading “How to be a Better Junior: an Overview”

Using Angular 2+ with Rails & Webpacker

By Amitai B.

Nov 19, 2017

I love Rails, and think it’s the best web development platform, at least from a developer’s point of view (DX). But it is not perfect. One of its major disadvantages is when you try to use it with one of new modern JavaScript frameworks such as React, Angular, Vue.

There is no “Rails” way to do it. You need to start messing with configurations and settings, all the things that Rails tries to avoid.

Continue reading “Using Angular 2+ with Rails & Webpacker”

Let Your Job Do Your Job – A Simple Architecture to Increase Performance

By Tomer S.

Nov 16, 2017

We live in a busy world.

We pay for many services such as cleaning and babysitting in order to get more free time for ourselves, using it to achieve the goals we desire. When we decide to use some of these services, we expect to have a start time and an estimated end time, and at the end to get the results according to the type of work we choose.

These principles are the basics of the architecture I will describe in this article. The architecture, which was implemented in one of our apps, uses jobs and client intervals to make an asynchronous mechanism and increase system performance.

Continue reading “Let Your Job Do Your Job – A Simple Architecture to Increase Performance”

Test Doubles for Dummies

By Guy Y.

Nov 15, 2017

Test Doubles is a generic term for any kind of pretend object used in place of a real object for testing purposes.

Doubles come in many shapes and sizes, and are often confused between one and another.

What is the difference between a dummy, mock, faker and stub?
Well, it doesn’t really matter as long as the terminology is agreed upon between the team members.

At the end of the day, doubles are tools. The trick is to use the right one for each task.

First, we’ll just into the terminology. We’ll use Jasmine. Spies, stubs & mocks are very similar but we’ll try to pin point the differences.

Continue reading “Test Doubles for Dummies”

Accurate Task Prediction – the Developer’s Holy Grail

By Dan Y.

Oct 1, 2017

Software task estimation is the process of predicting the time and effort required to complete tasks. Generally, these estimates are used to help customers and managers make better decisions regarding how long it will take to accomplish a given project.

It’s known that programmers often consider task estimation to be one of the most difficult things they do, which means they consistently find themselves with inaccurate or underestimated task predictions. To handle this problem, they pad their estimates but in many cases their rough guesses are too low.

Continue reading “Accurate Task Prediction – the Developer’s Holy Grail”