profile
viewpoint

ekaragodin/idea-sublime-keymap 267

Sublime keymap for Jetbrains IDEA

ekaragodin/MaintenanceMode 33

Maintenance mode for Yii framework.

ekaragodin/eslint-config-yandex 4

Yandex style guide for eslint

ekaragodin/StartApp 4

Another yii application for start development

ekaragodin/clone 2

A simple utility for the convenient clone

ekaragodin/SymfonyDemos 2

Demos bundle for Symfony 2

ekaragodin/FlexibleConfig 1

Flexible configuration for Yii.

ekaragodin/atomist-rest-demo 0

Atomist rest demo

ekaragodin/awesome-deno 0

🎉A curated list of awesome things related to Deno

ekaragodin/brackets-handlebars 0

Support handlebars in brackets

created tagekaragodin/clone

tagv1.0.5

A simple utility for the convenient clone

created time in 2 days

push eventekaragodin/clone

Evgenii Karagodin

commit sha d1f562304bad98a27f411ab93367c89cd2953578

Update readme and test webhook for publish

view details

push time in 2 days

push eventhtmlacademy-nodejs/1103621-buy-and-sell-3

Nikita Maslov

commit sha 2dcb64b3d1127cc7e70f2d9d5fbb817b36b502c4

module2-task2 is completed

view details

Nikita Maslov

commit sha fa0cf1c4777b46150043025badc14a8d82059854

added os separator

view details

Evgenii Karagodin

commit sha bbeb07279c6bc1b3fe6d6728d4333fd5b8eb6089

Merge pull request #4 from Nikmas-creator/module2-task2 Учебный проект: покоритель файлов

view details

push time in 3 days

Pull request review commenthtmlacademy-nodejs/1103621-buy-and-sell-3

Учебный проект: покоритель файлов

 const PictureRestrict = {  const getPictureFileName = (number) => `item${number.toString().padStart(2, 0)}.jpg`; -const generateOffers = (count) => (+const readContent = async (filePath) => {+  try {+    const content = await fs.readFile(filePath, `utf8`);+    return content.split(`\r\n`);

На разных операционных системах разные разделители строк. Это важно учитывать, чтобы программа могла работать на разных системах. Твой вариант работает только на windows. В модуле os есть подходящая константа, чтобы решить эту проблему.

Nikmas-creator

comment created time in 3 days

startedigoradamenko/awesome-made-by-russians

started time in 3 days

push eventhtmlacademy-nodejs/1103621-buy-and-sell-3

Nikita Maslov

commit sha ba059ea50a4641f7628697e56f44ecb18c86b675

module2-task1 is completed

view details

Evgenii Karagodin

commit sha 49dc5577e91498a8b88cdb6aeb9016fa19a9b355

Merge pull request #3 from Nikmas-creator/module2-task1 Учебный проект: асинхронность. Побег из ада коллбеков

view details

push time in 3 days

Pull request review commenthtmlacademy-nodejs/1103621-buy-and-sell-3

Учебный проект: асинхронность. Побег из ада коллбеков

 module.exports = {     }     const content = JSON.stringify(generateOffers(countOffer)); -    fs.writeFile(FILE_NAME, content, (err) => {-      if (err) {-        console.error(chalk.red(`Can't write data to file...`));-        process.exit(ExitCode.error);-      }--      console.info(`Operation success. File created.`);+    try {+      await fs.writeFile(FILE_NAME, content);+      console.info(chalk.green(`Operation success. File created.`));       process.exit(ExitCode.success);-    });+    } catch (error) {+      console.error(chalk.red(`Can't write data to file...`));

Всё отлично, небольшой совет по обработке ошибок: в сообщение которое выводишь в консоль лучше добавлять текст ошибки которая случилась console.error(chalk.red(Can't write data to file: ${error.message}.));. Так будет проще разобраться что пошло не так, когда произойдет какая-то ошибка.

Nikmas-creator

comment created time in 3 days

push eventhtmlacademy-nodejs/1103621-typoteka-3

Nikita Maslov

commit sha f4304aa50dab3c50733435ebaf69dcba723236cb

module1-task3 is completed

view details

Nikita Maslov

commit sha cfdff16f3b2debb2a994378d2c484eb4674e995d

added mocks.json to gitignore

view details

Nikita Maslov

commit sha c48f50572ec82ca3ed40efaa15567504741a5fb2

Changed date formatting method and joined announce and fuultext arrays elements to string

view details

Nikita Maslov

commit sha 0c659d0f7e652bac4baa4f64af85b361b72faa19

added the function to get the random date in range of three months

view details

Evgenii Karagodin

commit sha a9df40848ba0e405dab164fba2503fb3aa9bae79

Merge pull request #3 from Nikmas-creator/module1-task3 Личный проект: генератор публикаций

view details

push time in 3 days

push eventhtmlacademy-nodejs/68634-typoteka-3

evgeniy

commit sha c3edcd5b020512122f548c5a219da58ce667bb1d

Добавил имя наставника в readme-файл

view details

Evgenii Karagodin

commit sha f169e4246baf3e9829735ba4c60a84a31d8e85a7

Merge pull request #1 from filatow/module1-task1 Проверяем рабочий процесс

view details

push time in 3 days

Pull request review commenthtmlacademy-nodejs/1103621-typoteka-3

Личный проект: генератор публикаций

+'use strict';++const {+  getRandomInt,+  shuffle+} = require(`../../utils`);+const _ = require(`lodash`);+const chalk = require(`chalk`);+const fs = require(`fs`);+const {+  ExitCode+} = require(`../../constants`);++const FILE_NAME = `mocks.json`;++const DEFAULT_COUNT = 1;++const TITLES = [+  `Ёлки. История деревьев`,+  `Как перестать беспокоиться и начать жить`,+  `Как достигнуть успеха не вставая с кресла`,+  `Обзор новейшего смартфона`,+  `Лучшие рок-музыканты 20-века`,+  `Как начать программировать`,+  `Учим HTML и CSS`,+  `Что такое золотое сечение`,+  `Как собрать камни бесконечности`,+  `Борьба с прокрастинацией`,+  `Рок — это протест`,+  `Самый лучший музыкальный альбом этого года`+];++const SENTENCES = [+  `Ёлки— это не просто красивое дерево.Это прочная древесина.`,+  `Первая большая ёлка была установлена только в 1938 году.`,+  `Вы можете достичь всего.Стоит только немного постараться и запастись книгами.`,+  `Этот смартфон— настоящая находка.Большой и яркий экран, мощнейший процессор— всё это в небольшом гаджете.`,+  `Золотое сечение— соотношение двух величин, гармоническая пропорция.`,+  `Собрать камни бесконечности легко, если вы прирожденный герой.`,+  `Освоить вёрстку несложно.Возьмите книгу новую книгу и закрепите все упражнения на практике.`,+  `Бороться с прокрастинацией несложно.Просто действуйте.Маленькими шагами.`,+  `Программировать не настолько сложно, как об этом говорят.`,+  `Простые ежедневные упражнения помогут достичь успеха.`,+  `Это один из лучших рок - музыкантов.`,+  `Он написал больше 30 хитов.`,+  `Из под его пера вышло 8 платиновых альбомов.`,+  `Процессор заслуживает особого внимания.Он обязательно понравится геймерам со стажем.`,+  `Рок - музыка всегда ассоциировалась с протестами.Так ли это на самом деле ?`,+  `Достичь успеха помогут ежедневные повторения.`,+  `Помните, небольшое количество ежедневных упражнений лучше, чем один раз, но много.`,+  `Как начать действовать ? Для начала просто соберитесь.`,+  `Игры и программирование разные вещи.Не стоит идти в программисты, если вам нравится только игры.`,+  `Альбом стал настоящим открытием года.Мощные гитарные рифы и скоростные соло - партии не дадут заскучать.`+];++const CATEGORIES = [+  `Деревья`,+  `За жизнь`,+  `Без рамки`,+  `Разное`,+  `IT`,+  `Музыка`,+  `Кино`,+  `Программирование`,+  `Железо`+];++const generateArticles = (count) => {+  let articles = [];++  for (let i = 0; i < count; i++) {+    const announce = shuffle(SENTENCES).slice(0, 5);+    const differenceArray = shuffle(_.difference(SENTENCES, announce));+    const fulltext = differenceArray.slice(getRandomInt(1, differenceArray.length - 2));++    const currentDate = new Date();+    const threeMonthsAgo = new Date();+    threeMonthsAgo.setMonth(currentDate.getMonth() - 3);++    const randomDate = new Date(getRandomInt(threeMonthsAgo.getTime(), currentDate.getTime()));+    const year = randomDate.getFullYear();+    const month = randomDate.getMonth().toString().padStart(2, `0`);+    const day = randomDate.getDate().toString().padStart(2, `0`);+    const hours = randomDate.getHours().toString().padStart(2, `0`);+    const minutes = randomDate.getMinutes().toString().padStart(2, `0`);+    const seconds = randomDate.getSeconds().toString().padStart(2, `0`);+    const createdDate = `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;++    articles.push({

Поля announce и fulltext получились массивами строк, а должны быть просто строками.

Nikmas-creator

comment created time in 4 days

Pull request review commenthtmlacademy-nodejs/1103621-typoteka-3

Личный проект: генератор публикаций

+'use strict';++const {+  getRandomInt,+  shuffle+} = require(`../../utils`);+const _ = require(`lodash`);+const chalk = require(`chalk`);+const fs = require(`fs`);+const {+  ExitCode+} = require(`../../constants`);++const FILE_NAME = `mocks.json`;++const DEFAULT_COUNT = 1;++const TITLES = [+  `Ёлки. История деревьев`,+  `Как перестать беспокоиться и начать жить`,+  `Как достигнуть успеха не вставая с кресла`,+  `Обзор новейшего смартфона`,+  `Лучшие рок-музыканты 20-века`,+  `Как начать программировать`,+  `Учим HTML и CSS`,+  `Что такое золотое сечение`,+  `Как собрать камни бесконечности`,+  `Борьба с прокрастинацией`,+  `Рок — это протест`,+  `Самый лучший музыкальный альбом этого года`+];++const SENTENCES = [+  `Ёлки— это не просто красивое дерево.Это прочная древесина.`,+  `Первая большая ёлка была установлена только в 1938 году.`,+  `Вы можете достичь всего.Стоит только немного постараться и запастись книгами.`,+  `Этот смартфон— настоящая находка.Большой и яркий экран, мощнейший процессор— всё это в небольшом гаджете.`,+  `Золотое сечение— соотношение двух величин, гармоническая пропорция.`,+  `Собрать камни бесконечности легко, если вы прирожденный герой.`,+  `Освоить вёрстку несложно.Возьмите книгу новую книгу и закрепите все упражнения на практике.`,+  `Бороться с прокрастинацией несложно.Просто действуйте.Маленькими шагами.`,+  `Программировать не настолько сложно, как об этом говорят.`,+  `Простые ежедневные упражнения помогут достичь успеха.`,+  `Это один из лучших рок - музыкантов.`,+  `Он написал больше 30 хитов.`,+  `Из под его пера вышло 8 платиновых альбомов.`,+  `Процессор заслуживает особого внимания.Он обязательно понравится геймерам со стажем.`,+  `Рок - музыка всегда ассоциировалась с протестами.Так ли это на самом деле ?`,+  `Достичь успеха помогут ежедневные повторения.`,+  `Помните, небольшое количество ежедневных упражнений лучше, чем один раз, но много.`,+  `Как начать действовать ? Для начала просто соберитесь.`,+  `Игры и программирование разные вещи.Не стоит идти в программисты, если вам нравится только игры.`,+  `Альбом стал настоящим открытием года.Мощные гитарные рифы и скоростные соло - партии не дадут заскучать.`+];++const CATEGORIES = [+  `Деревья`,+  `За жизнь`,+  `Без рамки`,+  `Разное`,+  `IT`,+  `Музыка`,+  `Кино`,+  `Программирование`,+  `Железо`+];++const generateArticles = (count) => {+  let articles = [];++  for (let i = 0; i < count; i++) {+    const announce = shuffle(SENTENCES).slice(0, 5);+    const differenceArray = shuffle(_.difference(SENTENCES, announce));+    const fulltext = differenceArray.slice(getRandomInt(1, differenceArray.length - 2));++    const currentDate = new Date();+    const threeMonthsAgo = new Date();+    threeMonthsAgo.setMonth(currentDate.getMonth() - 3);++    const randomDate = new Date(getRandomInt(threeMonthsAgo.getTime(), currentDate.getTime()));+    const year = randomDate.getFullYear();+    const month = randomDate.getMonth().toString().padStart(2, `0`);+    const day = randomDate.getDate().toString().padStart(2, `0`);+    const hours = randomDate.getHours().toString().padStart(2, `0`);+    const minutes = randomDate.getMinutes().toString().padStart(2, `0`);+    const seconds = randomDate.getSeconds().toString().padStart(2, `0`);+    const createdDate = `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;

В целом решение с форматированием даты рабочее и на данном этапе приемлемо. Но оно занимает довольно много места и не сильно связано с функцией generateArticles. Такие кусочки кода лучше выносить в отдельные функции, чтобы основная функция оставалась компактной и понятной. На будущее можно посмотреть в сторону Date.toLocaleDateString либо специализированных модулей типа moment или luxon.

Nikmas-creator

comment created time in 4 days

push eventhtmlacademy-nodejs/1103621-buy-and-sell-3

Nikita Maslov

commit sha 8331a9a90829a13e1c25ddd0fb53e2bbc8a9c3a8

module1-task3 is completed

view details

Nikita Maslov

commit sha 3d8b7588c8d2349b69731166206dba3d8c7743d4

Fixed generate command count parameter limitations and eslint error

view details

Nikita Maslov

commit sha 46b84c0d33feceaeaa6f8b3c1dd0138142a39ce5

hope it's final fix

view details

Evgenii Karagodin

commit sha 953e4895d74bb7eee8dc88e69fef4001b1a284fd

Merge pull request #2 from Nikmas-creator/module1-task3 Учебный проект: консольные забавы

view details

push time in 5 days

Pull request review commenthtmlacademy-nodejs/1103621-buy-and-sell-3

Учебный проект: консольные забавы

 const generateOffers = (count) => (  module.exports = {   name: `--generate`,-  async run(args) {+  run(args) {     const [count] = args;-    const countOffer = Number.parseInt(count, 10) || DEFAULT_COUNT;+    let countOffer = Number.parseInt(count, 10) || DEFAULT_COUNT;++    if (countOffer < 1) {+      countOffer = DEFAULT_COUNT;+    } else if (countOffer > 1000) {+      console.error(chalk.red(`Не больше 1000 объявлений`));+      return;

В случае завершения с ошибкой программа должна возвращать ExitCode = 1.

Nikmas-creator

comment created time in 6 days

pull request commenthtmlacademy-nodejs/1103621-buy-and-sell-3

Учебный проект: консольные забавы

Привет! В целом всё хорошо, но есть пара замечаний:

  1. Команда generate не полностью соответствует условиям задачи - продолжает работать если count больше 1000, работает некорректно если count меньше 0.
  2. Есть неисправленная ошибка, которую находит eslint.
Nikmas-creator

comment created time in 6 days

push eventekaragodin/clone

Evgenii Karagodin

commit sha 723a2aaf889f3a67c717789bf276588b4cf2b3b3

Update readme

view details

push time in 14 days

created tagekaragodin/clone

tagv1.0.4

A simple utility for the convenient clone

created time in 14 days

push eventekaragodin/clone

Evgenii Karagodin

commit sha 7b04d39462d458424f46fb3a2180d13842b5cbb0

Fix travis config

view details

push time in 14 days

push eventekaragodin/clone

Evgenii Karagodin

commit sha 30dc778cb21ed199d39a5a3f47d43e931e360050

Update for latest Deno

view details

push time in 14 days

push eventekaragodin/deno_extra

Evgenii Karagodin

commit sha 3d6e6c41d3a94fb9c6dc946575a3b8104946235c

Update version in readme

view details

push time in 14 days

created tagekaragodin/deno_extra

tagv1.2.0

created time in 14 days

push eventekaragodin/deno_extra

Evgenii Karagodin

commit sha 65175a3997111fc82d61169a9acee79e14db8644

Update travis config

view details

push time in 14 days

push eventekaragodin/deno_extra

Evgenii Karagodin

commit sha 792efd7d251109a9650a49062427ce1d81628893

Update travis config

view details

push time in 14 days

push eventekaragodin/deno_extra

Evgenii Karagodin

commit sha e1959363e3fe4cf3c25eb3d22223c5f6c3762afd

Update travis config

view details

push time in 14 days

push eventekaragodin/deno_extra

Evgenii Karagodin

commit sha 0c8c27df86b60a56d1fc4953f903ec1b2272b10c

Update for latest Deno

view details

push time in 14 days

startedromejs/rome

started time in 3 months

more