Оставить комментарий

Продвижение сайтов в интернете

Немного обновился внешний вид блога, и я решил, что было бы неплохо внести изменения и в его содержимое. Конкретнее, на сайте появилась рубрика SEO, в которой я планирую размещать статьи по продвижению сайтов в интернете. Почему именно seo? Наверное, потому-что сейчас это актуально как никогда. Миссия данной рубрики – научить новичка профессионально продвигать сайты в интернете.

Идея заключается не в том, чтобы создать еще один пул статей популярной тематики, а в том, чтобы сохранить для себя набор самых эффективных методик.

Оставить комментарий

14 февраля – день всех влюбленных или чем себя занять ит-шнику

Во всем мире 14 февраля, влюбленные друг в друга мужчины и женщины, мальчики и девочки, айтишники и айтишницы, дарят подарки и проводят время вместе. Но есть и те, кто проведет этот день если не один, то в компании лучшего друга – компьютера 🙂 Так чем же можно заняться в этот день одинокому айтишнику?

  1. Самое время начать изучать новый язык программирования.

    Попробуйте написать программу на новом для вас языке, в качестве обучения. Например, на: C, C++, C#, Java, Python, Lisp, Ruby или Scala.

  2. Посмотреть хороший фильм.

    Если вы решили немного отвлечься от написания кода, и посмотреть как это делают другие 🙂 Что же, вот классная подборка фильмов

  3.  Поиграть в любимую игру.

    В этот день можно также заняться спортом, но не тем, что вызывает боли в мышцах, а компьютерным или кибер-спортом. Лично мне нравится часок другой провести за Counter-Strike, Minecraft или Dota2.

  4.  Подарок самому себе.

    Лучший подарок для программиста – это хорошая книга, новый гаджет или микрокомпьютер, например  Raspberry PI или  Arduino.

  5.   Посидеть в социальных сетях.

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

  6.  Ну и напоследок – подучить английский язык.

    На сегодняшний день есть множество ресурсов для этой цели. Не стоит говорит как важен английский для айтишника, и почему бы не уделить пару часов на чтение и перевод статьи 🙂

Лично я отдаю предпочтение 1 и 2 пункту, так как свободного времени много не бывает, и хорошо бы извлечь из этого пользу. Всех с праздником!

Оставить комментарий

Памятка простейших SQL запросов

Запрос для получения всех записей из таблицы table.

Если нужно получить какие-либо конкретные значения, например, вывести все записи где в столбце name есть имя Иван.

Тут, кстати, знак равенства можно заменить на LIKE, кому как удобно – результат будет тот же.

А что если имя Иван встречается в таблице несколько раз? Как бы их сгруппировать, и получить только одно имя? За группировку отвечает GROUP BY.

Если нужно просто отсортировать и вывести данные, нам поможет ORDER BY. Чтобы отсортировать значения любого столбца в порядке  убывания, используйте DESC, в противоположном ASC.

Предположим, в таблице table есть столбец id с автоинкрементом, и name. Добавить запись, в таком случае, поможет следующий запрос.

А следующий запрос наоборот удалит запись.

Есть несколько запросов, позволяющие объединять таблицы INNER JOIN, LEFT JOIN, RIGHT JOIN, OUTER JOIN, LEFT OUTER JOIN, RIGHT OUTER JOIN.

P.S. Памятка будет пополнятся по мере появления свободного времени.

Оставить комментарий

Два подхода к построению карьеры

Суть идеи

Есть два способа стать успешным профессионалом. Один очень распространненный, в который все верят, но который почти нереально реализовать. И второй, который намного проще, который очень реальный для всех нас, но которым люди редко пользуются. Подозреваю, что потому, что тут для многих как в анекдоте “А что, можно было?“.

Способ 1: Стать самым крутым в какой-нибудь области. Можно не самым прямо крутым, но, например, войти в top 1% профессионалов по области. На эту тему написана, например, хорошая книга Игоря Манна “Номер 1“.

С этим, в общем, сложно поспорить. Быть одним из самых крутых специалистов в какой-то области (как, например, Herb Sutter в C++, или Jeff Dean для large scale infrastructure – если вы их не знаете, обязательно погуглите, легенды и все дела) существенно облегчает поиск работы и построение карьеры. Когда тебя все знают как одного из самых крутых, то ты в домике.

Причем чем ближе вы приближаетесь к позиции “самый крутой”, тем лучше ваша профессиональная позиция. Вы можете не быть Bjarne Stroustrup, который создал С++, но можете вести свой блог о C++, выступать на конференциях разного масштаба и даже, может, написать о нем книжку. Вы уже приобретаете некоторый ореол крутизны, и это, конечно, плюс. Чем дальше, тем больше крутизны. Отсюда следует очевидный вывод, что система работает, и это верный вектор развития – наращиваем обороты и крутизну.

Проблема этого способа, однако, очевидна. Пробиться в Toп очень сложно. Вы можете 10-20-30 лет пытаться, без каких-либо гарантий того, что вас когда-либо пригласят на более масштабную конференцию, чем “С++ для программистов Гадюкино”. Не говоря уже о том, что о вас узнает весь мир.

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

Способ 2: Мозайка Талантов (у Адамса это называется Talent Stack). Под талантами я тут подразумеваю навыки, которыми можно овладеть, а не врожденные таланты.

Идея примерно такая. Вам не нужно быть самым лучшим ни в чем. Вам даже в top 5-10% входить необязательно. Но если у вас есть несколько талантов, с которыми вы входите в top 20%, причем все эти таланты востребованы на профессиональном рынке, то жизнь удалась!

Например, один из создателей WhatsApp (который Facebook купил за 19 миллиардов $$ пару лет назад) не смог устроиться на работу в Facebook и Twitter до того, как основать свою компанию.

Но в его случае он обладал как минимум несколькими талантами (я его лично не знаю, но полагаю, что это так):

  1. Он умел программировать и разбирался в программировании. Вероятно, он не был лучшим программистом на потоке в универе, и даже не был достаточно сильным кандидатом для Facebook и Twitter, чтобы они его наняли. Но он обладал достаточными навыками, чтобы начать работать над своим проектом.
  2. Он обладал психической устойчивостью. Во-первых он не поставил на себе крест после отказов, а начал искать другие варианты. Во-вторых, чтобы стать соучередителем успешной компании и успешно ее продать за рекордную сумму, психическая устойчивость нужна. Но он наверняка не является самым устойчивым человеком, я думаю, что до дзен-мастера ему далековато.
  3. Он обладал предпринимательской жилкой и способностью к бизнесу. Они нужны для того, чтобы понять, что идея перспективная, чтобы долго на ней работать без отдачи в ситуации неопределенности. И она нужни, чтобы довести проект до успешного конца, и хорошо продать. Но я сомневаюсь, что он самый крутой предприниматель из всех возможных. Наверняка есть куча людей, которые обладают лучшими способностями.

Я думаю, что все эти навыки были у него хорошо развиты. Но вряд ли он входит в топ “самых крутых” по любому их них.

Навыки для программиста

Я думаю, что для программиста, в дополнение к знанию программирования, очень полезными могут оказаться эти навыки:

— (by default) Программирование;
— Умение продавать;
— Умение убеждать людей, вести за собой, вдохновлять, работать с людьми, быть хорошим менеджером;
— Умение общаться с людьми, шутить, сплотить вокруг себя, разрядить напряженную ситуацию;
— Понимание продукта, пользователей, рынка (то, что обычно делает Product Manager);
— Дизайн, умение рисовать, UX;
— Знание компьютерой безопасности, machine learning или какой-нибудь другой более узкой востребованной области;
— Умение хорошо, структурированно и интересно писать;
— Предпринимательская жилка, умение видеть нериализованные возможности на рынке;
— Понимание денег – инвестирование, бухгалтерский учет, расчет бютжетов;
— Умение хорошо публично выступать;
— Знание иностранных языков на очень хорошем уровне (чем больше, тем лучше) – представьте себе, какие возможности открываются перед (не самым крутым) программистом, который говорит, скажем, на русском, английском и китайском;
— Знание психологии и умение ей воспользоваться, aka persuasion skills;
— Умение находить и поддерживать контакты с людьми;
— Умение хорошо одеваться, уверенная походка, знание этикета, умение держать себя в любом обществе.

Список наверняка неполный, но, думаю, вы поняли примерную идею. Представьте себе программиста, у которого есть все эти навыки на приличном уровне, хотя бы top 20%. Это бы был просто сверх-программист, какой-то =). Лично у меня сомнений в успешности по жизни такого сверх-программиста бы вообще не возникло. Да даже если и не все навыки, а хотя бы 3-4-5 в дополнение к программированию. Все равно бы была бомба!

Вывод

Не знаю как вам, но второй способ мне лично кажется намного более логичным и простым. Войти в топ 1% даже за 10-20 лет может быть нереально. Все пашут, гарантий никаких, пробиваются единицы. Прямо профессиональный Голливуд получается 🙂

А вот освоить несколько навыков из вышеперечисленных на вполне приличном уровне – очень даже возможно. Плюс, этот подход очень вариабилен. Если вам что-то не дано, то это ничего не значит. Вы можете сосредоточиться на тех аспектах, которые вам развить проще, и все равно достичь успеха.

Источник: https://geektimes.ru/post/284974/

Оставить комментарий

Чтение записей из Excel в C#

Не буду объяснять как работает код, ведь в комментариях и так все хорошо описано 🙂