All streams
Search
Write a publication
Pull to refresh
5
0

Пользователь

Send message
У меня еще входит несколько пунктов.
1. Поддержка BA. Review требований и консультации как лучше/правильнее описать.
2. Оценки. От оценки текущих проектных задач на планировании до оценки входящих проектов.
3. Knowledge sharing. Иногда мини лекции и/или mentoring кого-то из разработчиков.
4. Помощь QA автоматизаторам. От разъяснений по API до проверок тестов (выборочно).
>Созданные в нем рейтинги позволят исполнителям конкурировать не в маркетинге и хитрости, а в качестве оказываемых услуг.
дешевле заплатить за плохие отзывы на конкурента.

>умные контракты, которые уже сейчас позволяют заключать многомиллионные сделки без страха быть обманутыми, сделки с единственной трактовкой и без посредников.

Попробуйте выдать кредит на смартконтракте и удивитесь.
Что это за страна такая с 2 млрд людей?
Это из серии по закону надо хранить оружие в сейфею А что делать если дорого сейф покупать и на съемной квартире его ставить некуда.

Есть требования по хранению персональных данных. Закон. Выполняйте.

Не можете самостоятельно нанимайте кого-то. Давайте ему под подпись список документов и прочего, что является коммерческой тайно. Организуйте все в корректном виде.
Иначе потом не плачьте. Иски за разглашение персональных данных получит владелец магазина.
Сделать копию с обфусцированной базой. т.е. все имена, фамилии и т.д. заменить на Имя1, Имя2… Фамилия1, Фамилия2
и так со всей чувствительной информацией.
Делал похожее на Spring + REST. github.com/StanislavLapitsky/SpringSOAProxy

Объявляются интерфейсы для сервисов. Далее их реализация может быть распределенной. Все интерфейсы доступны. При вызове любого метода ищется сперва локальный бин, а если его нет динамическим прокси дергается тот же метод удаленно.

Еще надо бы Service Discovery впилить, но руки не доходят пока.

Согласен с предыдущими комментаторами. Если нужна двусторонняя связь проще просто на сокетах, а не втаскивать вебсокеты.
Добыча сырья и инфраструктура. Ни во что больше Китай не вкладывается. Никакой промышленности кроме добывающей. Добавленная стоимость должна быть в Китае — такова стратегия.

Шахту, дорогу, порт строят, остальное нет.
Как вы думаете почему iphone не собирают в Африке? Почему там не шьют одежду как в каком-нибудь Пакистане или Бангладеш?
Рассмотрим историка из статьи.
Какая часть его работы это сбор материалов? Копание в архивах, в каких-нибудь церковных книгах написанных 2 века назад с датами рождения и смерти.

И надо то историку средняя продолжительность жизни в России сравнить с Францией 200 лет назад.

Оцифрованный архив, плюс система распознавание и сбора данных, плюс немного бигдаты и историк пишет статью за день вместо 5 лет.

Сколько историков архивистов останется после оцифровки всего этого работать? Половину уволят?
Мне 43. В IT с 1996 года (full time). Наемный работник (пробовал и фрилансить).
Из моих одногруппников навскидку владельцев/совладельцев хорошо если 20%.

Примерно 10-15% разного уровня менеджемент.
Остальные наемные работники — senior, team lead, architect, lead QA, resource manager, project manager.

Понимаю, что выборка не репрезентативна, но здоровье в среднем такое же (или даже лучше), как у моих одноклассников.
Сидячая работа компенсируется более качественной медициной и отдыхом.
Расскажите о солнце и реках глубоководным осьминогам. В картинках желательно.
Если попытаться что-то палкой на песке то ветер быстро это сотрет.
Мы просто не пытались создать стойкие запахи (как скунс) и у нас достаточно слабое обоняние.
Вполне допускаю, что есть реально эффективные решения построенные на машинном обучении. Но кто ж вам расскажет.

Те у кого получилось сидят тихонько и зарабатывают.
Покритикую немного.
Зачем нужна возможность добавления версий с номером меньше текущей?
Нет возможности множественного владения.
Какой смысл жечь газ (=тратить деньги) в регистрации очередного билда?
Unpublish необратим.
Есть событие event Transfered(bytes32 indexed package);
но нет OwnershipChanged. Я бы еще добавлял не только пакет, но и адрес кандидата во владельцы.

// Регистрируем пакет
packages[name] = Package(name, msg.sender, 0);


Не вяжется с

struct Package {
address owner;
// Последний мажорная версия
uint8 latestMajor;
// Список всех мажорных версия
mapping(uint8 => Major) majors;
}


Имя не фигурирует
Надо к запросу в базу добавить фильтр по дате. Вытащить только тех у кого день рождения в дату вызова и сразу избавитесь от фильтрации. Условно говоря пробросить в SQL current date.
C Exception тоже просто. Уберите try/catch и посмотрите на что ругается компилятор. Он вам скажет какие не обратотаны. Ловите только их через или если у вас обработка одинакова.
catch (IOException | SomeMoreExcemption | OneMoreException e)
Проверьте меняется ли DATE. По-моему нет. Она один раз задастся при создании сервиса и все. В итоге вы сможете поздравить только тех кто родился в день старта.
Правильно будет выбирать эту дату на кажом цикле шедулера.
Выбирать всех пользователей и потом фильтровать их это дурной тон. Представьте, что у вас миллионы пользователей. Вы их начнете втаскивать в память из базы.

e.printStackTrace(); бахнет только в консоль, которой у вас может и не быть.

log.error(«Message», e); вот так логгер выведет во все источники.
Разберите Exception e на несколько тех что реально бросаются, чтобы не подавлять RuntimeException
                           StringBuffer message = new StringBuffer();
                            message.append("Happy Birthday dear ")
                                    .append(user.getName())
                                    .append("!");
                            emailService.send(user.getEmail(), "Happy Birthday!", message.toString());


Вот это бессмысленно. Во первых StringBuffer тут не нужен. Никакого мультипоточного доступа там нет. Во вторых простая конкатенация с java 7 если я правильно помню на уровне компиляции преобразуется в StringBuilder(). append().append().append(). Нет нужды городить.

SchedulerService. Вы проверьте будет ли у вас меняться DATE. Подозреваю что нет т.к. это по сути singleton сервис. Его только один instance существует.

} catch (Exception e) {
вот так тоже нехорошо делать. Если у вас будут какие-то неожиданные эксепшены у вас будет только строка в логе. И потом поди найди их. Stacktrace надо. Да и OutOfmemory у вас скроется.

if (DATE.getMonth() == user.getBirthday().getMonth()

тут вы словите NPE если даты рождения нету (NULL) и судя по отсутствию NotNull на поле в Entity вы его таки получите.
Для сборок еще кое где встречается старый добрый ant.
Есть вариант с iBatis/MyBatis для любителей SQL. И Spring Data для сильно нелюбящих. Довольно много в последнем запросов можно просто сделать названием методов.

Information

Rating
Does not participate
Location
Минск, Минская обл., Беларусь
Registered
Activity