У меня еще входит несколько пунктов.
1. Поддержка BA. Review требований и консультации как лучше/правильнее описать.
2. Оценки. От оценки текущих проектных задач на планировании до оценки входящих проектов.
3. Knowledge sharing. Иногда мини лекции и/или mentoring кого-то из разработчиков.
4. Помощь QA автоматизаторам. От разъяснений по API до проверок тестов (выборочно).
>Созданные в нем рейтинги позволят исполнителям конкурировать не в маркетинге и хитрости, а в качестве оказываемых услуг.
дешевле заплатить за плохие отзывы на конкурента.
>умные контракты, которые уже сейчас позволяют заключать многомиллионные сделки без страха быть обманутыми, сделки с единственной трактовкой и без посредников.
Попробуйте выдать кредит на смартконтракте и удивитесь.
Это из серии по закону надо хранить оружие в сейфею А что делать если дорого сейф покупать и на съемной квартире его ставить некуда.
Есть требования по хранению персональных данных. Закон. Выполняйте.
Не можете самостоятельно нанимайте кого-то. Давайте ему под подпись список документов и прочего, что является коммерческой тайно. Организуйте все в корректном виде.
Иначе потом не плачьте. Иски за разглашение персональных данных получит владелец магазина.
Сделать копию с обфусцированной базой. т.е. все имена, фамилии и т.д. заменить на Имя1, Имя2… Фамилия1, Фамилия2
и так со всей чувствительной информацией.
Объявляются интерфейсы для сервисов. Далее их реализация может быть распределенной. Все интерфейсы доступны. При вызове любого метода ищется сперва локальный бин, а если его нет динамическим прокси дергается тот же метод удаленно.
Еще надо бы Service Discovery впилить, но руки не доходят пока.
Согласен с предыдущими комментаторами. Если нужна двусторонняя связь проще просто на сокетах, а не втаскивать вебсокеты.
Добыча сырья и инфраструктура. Ни во что больше Китай не вкладывается. Никакой промышленности кроме добывающей. Добавленная стоимость должна быть в Китае — такова стратегия.
Рассмотрим историка из статьи.
Какая часть его работы это сбор материалов? Копание в архивах, в каких-нибудь церковных книгах написанных 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. Я бы еще добавлял не только пакет, но и адрес кандидата во владельцы.
Надо к запросу в базу добавить фильтр по дате. Вытащить только тех у кого день рождения в дату вызова и сразу избавитесь от фильтрации. Условно говоря пробросить в SQL current date.
C Exception тоже просто. Уберите try/catch и посмотрите на что ругается компилятор. Он вам скажет какие не обратотаны. Ловите только их через или если у вас обработка одинакова.
Проверьте меняется ли DATE. По-моему нет. Она один раз задастся при создании сервиса и все. В итоге вы сможете поздравить только тех кто родился в день старта.
Правильно будет выбирать эту дату на кажом цикле шедулера.
Выбирать всех пользователей и потом фильтровать их это дурной тон. Представьте, что у вас миллионы пользователей. Вы их начнете втаскивать в память из базы.
e.printStackTrace(); бахнет только в консоль, которой у вас может и не быть.
log.error(«Message», e); вот так логгер выведет во все источники.
Разберите Exception e на несколько тех что реально бросаются, чтобы не подавлять RuntimeException
Вот это бессмысленно. Во первых 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 вы его таки получите.
Есть вариант с iBatis/MyBatis для любителей SQL. И Spring Data для сильно нелюбящих. Довольно много в последнем запросов можно просто сделать названием методов.
1. Поддержка BA. Review требований и консультации как лучше/правильнее описать.
2. Оценки. От оценки текущих проектных задач на планировании до оценки входящих проектов.
3. Knowledge sharing. Иногда мини лекции и/или mentoring кого-то из разработчиков.
4. Помощь QA автоматизаторам. От разъяснений по API до проверок тестов (выборочно).
дешевле заплатить за плохие отзывы на конкурента.
>умные контракты, которые уже сейчас позволяют заключать многомиллионные сделки без страха быть обманутыми, сделки с единственной трактовкой и без посредников.
Попробуйте выдать кредит на смартконтракте и удивитесь.
Есть требования по хранению персональных данных. Закон. Выполняйте.
Не можете самостоятельно нанимайте кого-то. Давайте ему под подпись список документов и прочего, что является коммерческой тайно. Организуйте все в корректном виде.
Иначе потом не плачьте. Иски за разглашение персональных данных получит владелец магазина.
и так со всей чувствительной информацией.
Объявляются интерфейсы для сервисов. Далее их реализация может быть распределенной. Все интерфейсы доступны. При вызове любого метода ищется сперва локальный бин, а если его нет динамическим прокси дергается тот же метод удаленно.
Еще надо бы Service Discovery впилить, но руки не доходят пока.
Согласен с предыдущими комментаторами. Если нужна двусторонняя связь проще просто на сокетах, а не втаскивать вебсокеты.
Шахту, дорогу, порт строят, остальное нет.
Какая часть его работы это сбор материалов? Копание в архивах, в каких-нибудь церковных книгах написанных 2 века назад с датами рождения и смерти.
И надо то историку средняя продолжительность жизни в России сравнить с Францией 200 лет назад.
Оцифрованный архив, плюс система распознавание и сбора данных, плюс немного бигдаты и историк пишет статью за день вместо 5 лет.
Сколько историков архивистов останется после оцифровки всего этого работать? Половину уволят?
Из моих одногруппников навскидку владельцев/совладельцев хорошо если 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;
}
Имя не фигурирует
C Exception тоже просто. Уберите try/catch и посмотрите на что ругается компилятор. Он вам скажет какие не обратотаны. Ловите только их через или если у вас обработка одинакова.
Правильно будет выбирать эту дату на кажом цикле шедулера.
Выбирать всех пользователей и потом фильтровать их это дурной тон. Представьте, что у вас миллионы пользователей. Вы их начнете втаскивать в память из базы.
e.printStackTrace(); бахнет только в консоль, которой у вас может и не быть.
log.error(«Message», e); вот так логгер выведет во все источники.
Разберите Exception e на несколько тех что реально бросаются, чтобы не подавлять RuntimeException
Вот это бессмысленно. Во первых StringBuffer тут не нужен. Никакого мультипоточного доступа там нет. Во вторых простая конкатенация с java 7 если я правильно помню на уровне компиляции преобразуется в StringBuilder(). append().append().append(). Нет нужды городить.
SchedulerService. Вы проверьте будет ли у вас меняться DATE. Подозреваю что нет т.к. это по сути singleton сервис. Его только один instance существует.
вот так тоже нехорошо делать. Если у вас будут какие-то неожиданные эксепшены у вас будет только строка в логе. И потом поди найди их. Stacktrace надо. Да и OutOfmemory у вас скроется.
тут вы словите NPE если даты рождения нету (NULL) и судя по отсутствию NotNull на поле в Entity вы его таки получите.