среда, 18 февраля 2015 г.

6 ссылок, чтобы проверить, что знает о нас интернет

Мы пользуемся браузером и картами, пишем электронные письма, совершаем покупки в интернете — все это давно стало частью нашей жизни. Но что именно известно о нас интернет-компаниям, чьими сервисами мы пользуемся? считает, что некоторая информация вас удивит.

1. Узнайте свою историю местоположений

Если вы используете современный смартфон на базе Android или iOS, а ваш мобильный интернет включен в большинстве случаев, тогда вы будете удивлены той информацией, которую Google собирает о вашем местоположении изо дня в день. Здесь можно посмотреть историю ваших передвижений.

Top 10 Most Common Java Mistakes: Beginner’s Tutorial

Java is a programming language that was initially developed for interactive television, but over time it has become widespread over everywhere software can be used. Designed with the notion of object-oriented programming, abolishing the complexities of other languages such as C or C++, garbage collection, and an architecturally agnostic virtual machine, Java created a new way of programming. Moreover, it has a gentle learning curve and appears to successfully adhere to its own moto - “Write once, run everywhere”, which is almost always true; but mistakes are still present. I’ll be addressing ten Java mistakes that I think are the most common.

Common Mistake #1: Neglecting Existing Libraries

It’s definitely a mistake to ignore the innumerable amount of libraries written in Java. Before reinventing the wheel, try to search for available libraries - many of them have been polished over the years of their existence and are free to use. These could be logging libraries, like logback and Log4j, or network related libraries, like Netty or Akka. Some of the libraries, such as Joda-Time, have become a de facto standard.
The following is a personal experience from one of my previous projects. The part of the code responsible for HTML escaping was written from scratch. It was working well for years, but eventually it encountered a user input which caused it to spin into an infinite loop. The user, finding the service to be unresponsive, attempted to retry with the same input. Eventually, all the CPUs on the server allocated for this application were being occupied by this infinite loop. If the author of this naive HTML escape tool had decided to use one of the well known libraries available for HTML escaping, such as HtmlEscapers from Google Guava, this probably wouldn’t have happened. At the very least, true for most popular libraries with a community behind it, the error would have been found and fixed earlier by the community for this library.

A successful Git branching model

In this post I present the development model that I’ve introduced for all of my projects (both at work and private) about a year ago, and which has turned out to be very successful. I’ve been meaning to write about it for a while now, but I’ve never really found the time to do so thoroughly, until now. I won’t talk about any of the projects’ details, merely about the branching strategy and release management.
It focuses around Git as the tool for the versioning of all of our source code.

Не отступать и не сдаваться!