С тегами:

программирование

Любые посты за всё время, сначала свежие, с любым рейтингом
Найти посты
сбросить
загрузка...
227
Новая разработка Microsoft
31 Комментарий  

Microsoft совместно с Кембриджским Университетом разрабатывает программное обеспечение под названием DeepCoder. Встроенный искусственный интеллект умеет работать с описанием разрабатываемого ПО и искать подходящий код среди массивных баз данных с уже известными работающими строкам кода. DeepCoder словно сошёл со страниц научно-популярной фантастики минувших лет - имея всего лишь ряд требований, DeepCoder составляет собственный рабочий алгоритм всего за несколько секунд, буквально выдёргивая куски подходящего рабочего кода из имеющихся в открытом доступе баз данных.


"Потенциал для автоматизации написания программного кода просто невероятен. Это означает сокращение огромного количества усилий, которое требуется для разработки кода, - говорит Армандо Солар-Лезама из Массачусетского Технологического Института, который не принимал участия в работе. - Такая система будет гораздо продуктивнее любого человека. Кроме того, можно будет создавать системы, которые раньше было невозможно построить".


DeepCoder распознаёт, какие комбинации исходного кода работают, а какие нет, причём качество подбора частей кода улучшается с каждым разом. DeepCoder создаёт рабочие программы за доли секунды, в то время как более старые системы тратят по несколько минут, перебирая и пробуя разные комбинации строчек кода до тех пор, пока одна из них не сработает. Таким образом, разработка Microsoft представляет собой более "умную" и продвинутую платформу.


Впрочем, программистам и разработчикам пока не стоит волноваться. О полной автоматизации процесса написания рабочих программ речи не идёт. В последних тестовых проверках DeepCoder успешно справлялся с составлением кода из пяти строк. Тем не менее развитие AI и нейронных сетей осуществляется такими темпами, что всего через несколько лет мы можем получить первые реально действующие наработки в этой области. Не исключено, что когда-нибудь пользователь сможет описать необходимую ему программу, а компьютер моментально выдаст рабочее приложение с готовым интерфейсом.

Новая разработка Microsoft говнокод, программирование, it, Microsoft, новость
365
Основы программирования: Лекция #9. JavaScript. II [CS50-2015, Гарвард]
12 Комментариев в Наука | Science  

Привествуем!

Мы продолжаем публиковать лекции легендарного Гарвардского курса CS50, которые мы переводим и озвучиваем специально для JavaRush. Сегодня представляем вам девятнадцатую лекцию.


В этой серии цикла продолжается знакомство с языком JavaScrip , а также демонстрируется использование компьютерных технологий в сфере археологии.

Напомним, что всего в курсе 24 лекции.


Список уже переведённых на сегодняшний день лекций:


1-я лекция: вступительная, знакомит с общими понятиями языков программирования, а также с командой преподавателей и системой предстоящих занятий.

2-я лекция: также является вступительной и знакомит с общими понятиями языков программирования, продолжая тему первой лекции.

3-я лекция: знакомит с понятием и функциями компилирования и рассказывает, каким образом в программах появляются баги (начиная с самого первого «компьютерного жучка»), как их распознать и чем они могут быть вызваны.

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

5-я лекция: продолжение о багах, плюс раскрывает понятие структуры программы, объясняет, зачем нужны функции внутри кода, в чём важность области действия значений, и вводит функцию strlen. Также из неё вы узнаете, как в CS50 борются с любителями списывать, и научитесь экономить оперативную память компьютера во избежание ошибки сегментации.

6-я лекция: об основах криптографии, массивах и аргументах командной строки.

7-я лекция: знакомит с основными методами сортировки данных. Дэвид Мэйлен рассказывает о пузырьковой сортировке, сортировках выбором, вставкой и слиянием, а зрители проверяют их на практике.

8-я лекция: про сортировку данных методом слияния, а также краткий экскурс в мир побитовых операций.

9-я лекция: продолжение знакомства с оператором условия — if, введение понятие рекурсии, а также обсуждение скандала концерна Volkswagen и проблемы компьютерной безопасности. Лектор детально рассматривает функцию перестановки - swap, демонстрирует приёмы работы с отладчиком программ и раскрывает структуру и механику оперативной памяти.

10-я лекция: о разных методах составления списков, сохранении информации о программе и использовании указателей и указуемых.

11-я лекция: изучение указателей, разбор структуры функций библиотеки CS50, знакомство с утечкой памяти, введение понятия linked list и других структур данных с детальной демонстрацией.

12-я лекция: про особенности стека, очереди и связного списка. Разбор возможных проблем, связанных с доступом к памяти. Тут же рассматривается структура двоичного дерева, префиксного дерева и работа со сжатием файлов.

13-я лекция: о хэшировании данных, сетевых протоколах и о том, как при помощи зашифрованных соединений защитить себя от подозрительных незнакомцев.

14-я лекция: введение в веб-программирование и знакомство с языками HTML и CSS. Впервые в истории студенты двух учебных заведений — Гарварда и Йеля — при помощи современных технологий параллельно проходят обучение на курсе.

15-я лекция: знакомство с языком программирования PHP и языком разметки HTML.

16-я лекция: продолжение рассмотрения языка PHP, теперь для разработки веб-приложений, а также знакомство с базами данных и MySQL.

17-я лекция: продолжение знакомства с базами данных SQL.

18-я лекция: введение в JavaScrip tи программирование на стороне клиента.

Показать полностью
1060
Чёрно-белые дни фрилансера
104 Комментария в Лига фрилансеров  

Так уж получилось, что у фрилансеров в ходу в основном истории абсурдные, печальные, с плохими и неадекватными клиентами. Чё рассказывать про хороших? Разве там есть чему удивляться? На самом деле - бывает. В этом посте я предоставлю несколько коротеньких историй, чередуя хорошие и плохие случаи.



История первая (белая):


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

________________________


История вторая (чёрная):


Тут в форме затяжного диалога.

- Мне нужно сделать вот это.

- Хорошо, сделаем.

- Но не совсем это, а немного отличающееся от этого, а ещё вот это.

- Как отличающееся? Второе "вот это" делать как в примере?

- Не совсем, должно отличаться.

- Как? И что по первому вопросу?

- Так и так, а ещё нужно вот это третье сделать. А часть из того, о чём я раньше писал, я уже сделал сам.

- Так что всё-таки нужно сделать?

- У вас же всё в переписках есть, зачем спрашиваете?

- Извините, но переписка растянулась на две недели, часть работ потеряла актуальность, по части возникли вопросы, уточнения на которые вы не дали. Можете подытожить работу, составить тз?

- Нет, у вас всё есть в переписках.

- Хорошо, давайте я составлю тз, а вы посмотрите утвердите, но так уйдёт больше моего времени и вся работа будет стоить дороже.

- Мне это не подходит. Всего доброго.

________________________


История третья (белая):


Нужно было слизать слайдер у конкурентов - элементарнейшая дешёвая работа. Но в процессе выполнения у меня упал интернет, после часовых разбирательств с провайдером интернет вернулся, а скайп полнился сообщениями "возникли какие-то трудности?", "вы не заморачивайтесь так сильно, если что-то не так", "если не получается, то не переживайте, со всеми бывает, деньги я назад требовать не стану".

________________________


История четвёртая (чёрная):


- Сделайте мне крутой продающий сайт на основе этого.

- Хорошо, вот он - готов.

Проходит неделя.

- Вы говно какое-то сделали, с вашего этого сайта ни один клиент не позвонил! Зато с моего старого, который вы раскритиковали за дизайн и юзабилити, звонки так и прут.

Лезу в аналитику, проверяю посетителей и звонки с сайта - на новом сайте конверсия составляет 4,5%,тогда как на старом 1,5%. Показываю клиенту.

- Ничё не знаю, я в этих ваших сложных технических примочках не понимаю. У меня есть две линии - для первого и для второго сайта. Один телефон молчит всю неделю, другой разрывается, некоторые клиенты даже пробиться не могут.

- Так у вас же на обоих сайтах указан один и тот же номер телефона.

- Что?! Так я ещё из-за вас деньги теряю? Потому что вы указали тот же номер телефона?!

- Второй сайт делался на основе первого, вплоть до переноса всех данных. Откуда мне было знать, что будет другой номер телефона, если вы этот момент никак не упомянули?

- Это ваши проблемы, меня это не волнует. Верните деньги и скажите спасибо, что я свои убытки на вас не повешу.

________________________


История пятая (белая):


- Напишите нам скрипт для обработки входящих данных и вывода элементов, в зависимости от этих данных.

Клиент кидает пустую страницу.

- А какие данные? Какие элементы?

- Это потом будет решаться, напишите структуру с заглушками, мы сами донастроим.

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

Закончил работу, жду день, второй, третий - тишина. Открываю страницу, а там на месте белого полотна разрослась внушительная вёрстка, принимается большой поток данных, элементы фильтруются и сортируются, код скрипта увеличился раз в тридцать, но в основе всего этого - моя структура. Разобрались, размножили, настроили, не задали ни одного вопроса.

________________________


История шестая (чёрная):


По аналогии с предыдущей - попросили основу, обещали донастроить самостоятельно. В итоге сообщения вида:

- Я полез менять, там всё сломалось, у вас плохой код, верните деньги.

Проверил скрипт, человек банально сломал синтаксис, не поставив закрывающую кавычку в одном месте. Указал на это и получил ответ:

- Это не важно, я уже всё удалил, больше не будем сотрудничать. Ваша работа не понадобилась - верните деньги.

________________________


История седьмая (белая):


- Нужно сделать первую вещь, вторую вещь и третью вещь.

- За все три стоимость будет вот такая.

- Хорошо, оплатил.

- Первая и вторая вещи готовы, третью сделаю завтра.

- Знаете, я тут сам вчера просматривал, как это сделать, и, кажется, понял. Давайте я сам попробую, мне полезнее будет, деньги возвращать не нужно. Спасибо за работу.

- Хорошо, если возникнут трудности или что-то не получится - обязательно пишите.

________________________


История восьмая (чёрная):


Клиент заказал администрирование сайта с самописной админкой. Заменить текста, обновить контактные данные, по мелочи. Полез ковыряться... Из админки на меня смотрел бабуиний код, написанный мартышкой, обучавшейся у потомственного индуса. Кривой код был положен в основу всего сайта, потом множился и спаривался с новым кривым кодом, но, судя по его виду, никогда не оптимизировался. И для правки даже текстов нужно было лезть к этой мартышке в задницу. На понимание принципов работы этого ада ушло добрых часа три, после чего я выставил клиенту ценник с учётом этих временных трат и упомянул, что дальше будет дешевле, потому что я пока знакомлюсь с админкой и закономерно уходит больше времени.

- Что?! Какие тысячи? Это мелкие правки, я готов платить максимум по десять рублей за текст и только ради экономии собственного времени, а за вашу некомпетентность переплачивать не намерен.

В общем, это он написал админку и, понятное дело, для него там всё было понятно. Распрощались быстро.

________________________


История девятая (белая):


Обращается клиент, тоже с самописной админкой.

- Админку нам на заказ сделал программист, но сейчас у него другие проекты, мы больше не сотрудничаем.

- На изучение мне потребуется время и работа в зависимости от этого времени будет дороже.

- Конечно, нам программист перед прекращением сотрудничества оставил документацию. Вот и вот.

- Я ознакомлюсь.

- И свои контактные данные. Сказал, что если на что-то не найдётся ответа в документации, то можно связаться с ним.

- Благодарю.

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

________________________


История десятая (чёрная):


Самое сладкое напоследок.

Клиент запросил встраивание скрипта какой-то убер-корзины, сделанной на чистом js'е и сразу связанной с несколькими платёжными шлюзами с возможностью переключения между ними. Посмотрел, изучил, назвал цену. Клиента не устроила не столько цена, сколько сам факт её наличия. Он был свято уверен, что при работе с ним я получу бесценный опыт, а также сам скрипт (невероятно востребованный), который впоследствии смогу продавать всем подряд, на чём однажды разбогатею. И на фоне всего этого я должен быть безмерно благодарен за такой шанс, да и вообще заплатить за предоставление этого скрипта, но клиент человек дальновидный, поэтому вместо денег за этот скрипт возьмёт с меня услугу по его внедрению. Распрощались быстро, смеялись долго.

Показать полностью
266
Разработка игр на LibGDX (Android, IOS, Desktop)
41 Комментарий в Лига Разработчиков Видеоигр  
Разработка игр на LibGDX (Android, IOS, Desktop) android, программирование на android, программирование, IOS, gamedev, java, видео

libGDX позволяет разработчику писать, тестировать и отлаживать код на собственном компьютере и затем переносить его на другие ОС. Для этого фреймворк использует отдельные модули для сборки приложения под каждую платформу, а так же независимый модуль, который содержит основной код приложения.


Поддержка Windows, Linux, Mac OS X, Android ОС, Браузеры с поддержкой WebGL и iOS. 32 и 64-разрядные версии ОС.

1853
99 онлайн-курсов для инженеров и программистов
90 Комментариев в Лига образования  

В комментариях к прошлой записи (http://pikabu.ru/story/99_besplatnyikh_onlaynkursov_kotoryie...) многие говорили о том, что нужно больше курсов по IT. Ловите! Заботливо собраны совместно со всеми, кто в этих темах разбирается лучше меня:) Делитесь своими любимыми курсами в комментариях!


Для начинающих

1. Как выиграть соревнования по программированию: секреты чемпионов https://www.edx.org/course/how-win-coding-competitions-secre... (Университет ИТМО, язык курса: английский)

2. Информатика для втузов https://openedu.ru/course/ITMOUniversity/COMTEC/ (Университет ИТМО, язык курса: русский)

3. Основы программирования https://www.edx.org/course/programming-basics-iitbombayx-cs1... (Индийский технологический институт Бомбея, язык курса: английский)

4. История, технология и безопасность Интернета https://ru.coursera.org/learn/internet-history (Мичиганский университет, язык курса: английский)

5. Информационные технологии и программирование https://pushkininstitute.ru/school/external_courses/238 (Казанский национальный исследовательский технический университет имени А. Н. Туполева, язык курса: русский)

6. Введение в программирование (C++) https://stepik.org/363 (Высшая школа экономики, Академия Яндекса, язык курса: русский)

7. Комбинаторика для начинающих https://ru.coursera.org/learn/kombinatorika-dlya-nachinayush... (Московский физико-технический институт, язык курса: русский)


Математика и логика

8. Высшая математика. Линейная алгебра и элементы топологии https://openedu.ru/course/mipt/HIGHMATH2/ (Московский физико-технический институт, язык курса: русский)

9. Высшая математика. Алгебра: введение в теорию групп https://openedu.ru/course/spbu/MATGR/ (Санкт-Петербургский государственный университет, язык курса: русский)

10. Дискретная математика https://www.coursera.org/learn/discrete-mathematics (Шанхайский университет Джао Тонг, язык курса: английский)

11. Высшая математика. Математический анализ https://openedu.ru/course/mipt/MATAN/ (Московский физико-технический институт, язык курса: русский)

12. Курс математического анализа (первый семестр) https://openedu.ru/course/msu/CALC1/ (МГУ имени М. В. Ломоносова, язык курса: русский)

13. Математический анализ. Теория функций одной переменной https://openedu.ru/course/msu/CALCSV/ (МГУ имени М. В. Ломоносова, язык курса: русский)


Разработка ПО

14. Программирование на C# https://openedu.ru/course/urfu/CSHARP/ (Уральский федеральный университет, язык курса: русский)

15. Постановка задачи на разработку ПО https://stepik.org/1128 (Mail.Ru Group, язык курса: русский)

16. Программирование для всех (начните с Python) https://ru.coursera.org/learn/python (Мичиганский университет, язык курса: английский)

17. Функциональное программирование: базовый курс https://openedu.ru/course/ITMOUniversity/FPBC/ (Университет ИТМО, язык курса: русский)

18. Программирование на языке C++ https://stepik.org/7 (Санкт‑Петербургский академический университет, язык курса: русский)

19. Функциональное программирование на языке Haskell https://stepik.org/75 (Санкт‑Петербургский академический университет, CS центр, язык курса: русский)

20. Базы данных https://openedu.ru/course/spbu/DTBS/ (Санкт-Петербургский государственный университет, язык курса: русский)


Разработка мобильных и веб-приложений

21. Программирование и разработка веб-приложений https://openedu.ru/course/ITMOUniversity/PWADEV/ (Университет ИТМО, язык курса: русский)

22. HTML, CSS и Javascript для веб-разработчиков https://ru.coursera.org/learn/html-css-javascript-for-web-de... (Университет Джона Хопкинса, язык курса: английский)

23. Веб-программирование https://openedu.ru/course/ITMOUniversity/WEBDEV/ (Университет ИТМО, язык курса: русский)

24. Основы Веб-дизайна и Программирования https://ru.coursera.org/learn/duke-programming-web (Университет Дьюка, язык курса: английский)

25. Как создать сайт за выходные (проектно-ориентированный курс) https://ru.coursera.org/learn/how-to-create-a-website (Государственный университет штата Нью-Йорк, язык курса: английский)

26. Основы адаптивного веб-сайта; Программирование с помощью HTML, CSS и JavaScript https://ru.coursera.org/learn/website-coding (Голдсмитс, язык курса: английский)

27. Java для Android https://ru.coursera.org/learn/java-for-android (Университет Вандербильта, язык курса: английский)


Алгоритмы

28. Математическая логика и теория алгоритмов https://www.lektorium.tv/mooc2/26749 (Томский государственный университет систем управления и радиоэлектроники, язык курса: русский)

29. Алгоритмы программирования и структуры данных https://openedu.ru/course/ITMOUniversity/PADS/ (Университет ИТМО, язык курса: русский)

30. Алгоритмы: теория и практика. Методы https://stepik.org/217 (Computer Science Center, язык курса: русский)

31. Алгоритмизация вычислений https://ru.coursera.org/learn/algoritmizacija-vychislenij (Высшая школа экономики, язык курса: русский)

32. Анализ алгоритмов https://ru.coursera.org/learn/analysis-of-algorithms (Принстонский университет, язык курса: английский)

33. Алгоритмы https://www.edx.org/course/algorithms-iitbombayx-cs213-3x-0 (Индийский технологический институт Бомбея, язык курса: английский)

34. Основы алгоритмов https://ru.coursera.org/learn/algorithmic-toolbox (Калифорнийский университет в Сан-Диего, Высшая школа экономики, язык курса: английский)

35. Основы структур данных https://www.edx.org/course/foundations-data-structures-iitbo... (Индийский технологический институт Бомбея, язык курса: английский)


Компьютерная безопасность и сети

36. Протоколы мобильных и конвергентных сетей https://openedu.ru/course/ITMOUniversity/NETPRO/ (Университет ИТМО, язык курса: русский)

37. Разработка безопасных приложений для Android https://www.futurelearn.com/courses/secure-android-app-devel... (Саутгемптонский университет, язык курса: английский)

38. Инфокоммуникационные протоколы https://openedu.ru/course/ITMOUniversity/PRTFDN/ (Университет ИТМО, язык курса: русский)

39. Кибербезопасность и десять сфер её применения https://ru.coursera.org/learn/cyber-security-domain (Система университетов штата Джорджия, язык курса: английский)

40. Безопасность программного обеспечения https://ru.coursera.org/learn/software-security (Мэрилендский университет в Колледж-Парке, язык курса: английский)

41. Актуальные угрозы компьютерной безопасности https://www.lektorium.tv/mooc2/26538 (Лаборатория Касперского, язык курса: русский)

42. Информационная безопасность https://ru.coursera.org/learn/information-security-data (Лондонский университет, язык курса: английский)

43. Основы кибербезопасности https://www.edx.org/course/cybersecurity-fundamentals-ritx-c... (Технологический институт Рочестер, язык курса: английский)


Дизайн и продукт

44. Геймдизайн: по ту сторону игры http://universarium.org/course/618 (WARGAMING, язык курса: русский)

45. Геймификация https://ru.coursera.org/learn/gamification (Пенсильванский университет, язык курса: английский, русские субтитры)

46. Принципы геймдизайна https://ru.coursera.org/learn/gamedesign (Университет штата Мичиган, язык курса: английский)

47. Разработка, осуществление и анализ экспериментов https://ru.coursera.org/learn/designexperiments (Калифорнийский университет в Сан-Диего, язык курса: английский)

48. История дизайна видеоигр https://www.edx.org/course/video-game-design-history-ritx-ga... (Технологический институт Рочестер, язык курса: английский)

49. Прототипирование и дизайн https://ru.coursera.org/learn/prototyping-design (Миннесотский университет, язык курса: английский)

50. Основы графического дизайна https://ru.coursera.org/learn/fundamentals-of-graphic-design (Калифорнийский институт искусств, язык курса: английский)

51. Введение в геймдизайн https://ru.coursera.org/learn/game-design (Калифорнийский институт искусств, язык курса: английский)


Машинное обучение

52. Введение в машинное обучение https://www.coursera.org/learn/vvedenie-mashinnoe-obuchenie (Высшая школа экономики, язык курса: русский)

53. Машинное обучение https://ru.coursera.org/learn/machine-learning (Стэнфордский университет, язык курса: английский)

54. Основы машинного обучения: обучение на конкретных примерах https://ru.coursera.org/learn/ml-foundations (Вашингтонский университет, язык курса: английский)

55. Нейронные сети https://stepik.org/401 (Институт биоинформатики, язык курса: русский)

56. Машинное обучение https://www.udacity.com/course/machine-learning--ud262 (Kaggel, язык курса: английский)

57. Нейронные сети для машинного обучения https://ru.coursera.org/learn/neural-networks (Торонтский университет, язык курса: английский)

58. Вычислительная нейробиология https://ru.coursera.org/learn/computational-neuroscience (Торонтский университет, язык курса: английский)

59. Анализ данных на практике https://openedu.ru/course/mipt/ANDATA/ (Московский физико-технический институт, язык курса: русский)

60. Введение в анализ данных https://www.udacity.com/course/intro-to-data-analysis--ud170 (язык курса: английский, русские субтитры)


Теория вероятности и статистика

61. Введение в теорию вероятностей https://openedu.ru/course/mipt/PROBTH/ (Московский физико-технический институт, язык курса: русский)

62. Базовая статистика https://ru.coursera.org/learn/basic-statistics (Амстердамский университет, язык курса: английский)

63. Эконометрика https://openedu.ru/course/hse/METRIX/ (Высшая школа экономики, язык курса: русский)

64. Статистический анализ https://ru.coursera.org/learn/statistical-inference Johns (Университет Джонса Хопкинса, язык курса: английский)

65. Построение выводов по данным https://ru.coursera.org/learn/stats-for-data-analysis (Московский физико-технический институт, язык курса: русский)

66. Введение в статистику https://www.udacity.com/course/intro-to-statistics--st101 (язык курса: английский)

67. Основы статистики https://stepik.org/76 (Институт биоинформатики, язык курса: русский)

68. Статистика вывода https://www.coursera.org/learn/inferential-statistics (Амстердамский университет, язык курса: английский)


Графы

69. Теория графов https://ru.coursera.org/learn/teoriya-grafov (Московский физико-технический институт, язык курса: русский)

70. Методы и алгоритмы теории графов https://openedu.ru/course/ITMOUniversity/AGRAPH/ (Университет ИТМО, язык курса: русский)

71. Веб-графы и методы работы с ними https://openedu.ru/course/mipt/WEBGRAPH/ (Московский физико-технический институт, язык курса: русский)

72. Случайные графы https://openedu.ru/course/mipt/GRAPHS1/ (Московский физико-технический институт, язык курса: русский)

73. Теория кодирования https://openedu.ru/course/mipt/TEORCOD/ (Московский физико-технический институт, язык курса: русский)

74. Алгоритмы на графах https://ru.coursera.org/learn/algorithms-on-graphs (Калифорнийский университет в Сан-Диего, Высшая школа экономики, язык курса: английский)

75. Теория графов https://openedu.ru/course/mipt/GRAPHTH/ (Московский физико-технический институт, язык курса: русский)


Робототехника

76. Управление мехатронными и робототехническими системами https://openedu.ru/course/ITMOUniversity/ROBCTR/ (Университет ИТМО, язык курса: русский)

77. Строим роботов и другие устройства на Arduino. От светофора до 3D-принтера https://www.coursera.org/learn/roboty-arduino (Московский физико-технический институт, язык курса: русский)

78. Конструирование роботов и устройств на Arduino https://ru.coursera.org/learn/arduino (Московский физико-технический институт, язык курса: русский)

79. Линейные системы автоматического управления https://openedu.ru/course/ITMOUniversity/LINACS/ (Университет ИТМО, язык курса: русский)

80. Основы программирования роботов https://pushkininstitute.ru/school/facultative/external_cour... (Московский государственный университет приборостроения и информатики, язык курса: русский)

81. Введение в робототехнику: заставьте роботов двигаться https://www.futurelearn.com/courses/making-robots-move (Квинслендский Технологический Университет, язык курса: английский)

82. Контроль мобильных роботов https://ru.coursera.org/learn/mobile-robot (Технологический институт Джорджии, язык курса: английский)

83. Инновации в промышленности: мехатроника и робототехника https://www.coursera.org/learn/innovations-in-industry-robot... (Национальный исследовательский Томский государственный университет, язык курса: русский)


Физика и астрономия

84. Астрономия: исследуем время и пространство https://www.coursera.org/learn/astro (Аризонский университет, язык курса: английский)

85. Астрономия https://www.lektorium.tv/mooc2/26284 (Центр Педагогического Мастерства, язык курса: русский)

86. Астрофизика: от звезд до границ Вселенной https://www.coursera.org/learn/astrofizika (Санкт-Петербургский политехнический университет Петра Великого, язык курса: русский)

87. Основы астрономии https://openedu.ru/course/msu/BASTRO/ (МГУ имени М. В. Ломоносова, язык курса: русский)

88. Физика как глобальный проект https://www.coursera.org/learn/physics-global-project (Национальный исследовательский ядерный университет «МИФИ», язык курса: русский)

89. От атомов до звезд: как физика объясняет мир https://www.edx.org/course/atoms-stars-how-physics-explains-... (Национальный исследовательский ядерный университет «МИФИ», язык курса: английский, русские субтитры)

90. Звёздная астрономия https://postnauka.ru/courses/43956 (МГУ имени М.В. Ломоносова, язык курса: русский)

91. Ядерная физика https://openedu.ru/course/spbu/PHYSNU/ (Санкт-Петербургский государственный университет, язык курса: русский)

92. Элементы атомной и ядерной физики https://www.coursera.org/learn/elementy-atomnoj-i-yadernoj-f... (Национальный исследовательский ядерный университет «МИФИ», язык курса: русский)


Электроника и радиотехника

93. Современная промышленная электроника https://openedu.ru/course/spbstu/MODIEL/ (Санкт-Петербургский политехнический университет Петра Великого, язык курса: русский)

94. Введение в электронику https://www.coursera.org/learn/electronics (Технологический институт Джорджии, язык курса: английский)

95. Основы электротехники и электроники https://openedu.ru/course/urfu/ELB/ (Уральский федеральный университет, язык курса: русский)

96. Линейные электрические цепи https://openedu.ru/course/ITMOUniversity/LINCIR/ (Университет ИТМО, язык курса: русский)

97. Электронные материалы и приборы https://www.edx.org/course/electronic-materials-devices-mitx... (Массачусетский технологический институт, язык курса: английский)

98. Электрические машины https://openedu.ru/course/ITMOUniversity/ELMACH/ (Университет ИТМО, язык курса: русский)

99. Электродинамика https://openedu.ru/course/urfu/ELECD/ (Уральский федеральный университет, язык курса: русский)

Показать полностью
4601
Типичный заказчик
437 Комментариев  
Типичный заказчик
617
Основы программирования: Лекция #9. JavaScript. I [CS50-2015, Гарвард]
26 Комментариев в Наука | Science  

Всем привет!

Мы продолжаем публиковать лекции легендарного Гарвардского курса CS50, которые мы переводим и озвучиваем специально для JavaRush. Сегодня представляем вам восемнадцатую лекцию.

Тема этой серии цикла — введение в JavaScrip и программирование на стороне клиента.

Всего в курсе 24 лекции, с предыдущими можно ознакомиться здесь.


Подробнее о CS50

На кого рассчитан курс?


Если вы — новичок, пройдите CS50. Если кто-то из ваших знакомых приглядывается к ИТ и программированию, советуйте CS50 не глядя. Я серьезно.


CS50 подойдет любому человеку, кто решил стать «айтишником». Пожалуй, его можно рекомендовать и способным 12-летним, и умудренным опытом «перебежчикам» из других профессий. Идеально — старшеклассникам и студентам.


Курс очень прогрессивный и обновляется из года в год. При этом в отличие от большинства подобных университетских обучающих программ (например, MIT 6.00X) от слушателя не требуются знания университетской математики, достаточно школьного уровня.



Что изучают на CS50?


— Основы компьютерных наук и программирования. Системы счисления, работа с командной строкой в Linux, циклы, условные переходы и прочие радости;

— Концепции алгоритмов и алгоритмичности мышления. Вы узнаете о том, какие задачи можно решать с помощью программирования и каким образом. О бинарном поиске, простом по сути, но очень эффективном и требующем тщательности в реализации, Дэвид Малан расскажет сходу, прямо на нулевой лекции. И попробуйте потом забыть сцену с разрывом телефонного справочника, а вместе с ней — и полученные знания! Вообще, курс охватывает все основные алгоритмы, которые нужно знать и понимать «айтишникам»;

— Концепции абстракции, структуры данных, инкапсуляции, управления памятью. Основы компьютерной безопасности. Процесс разработки ПО и веб-разработка;

— Основы языка программирования C и визуального языка Scratch. Собственно, все основные примеры и задания студенты делают на языке C;

— Основы баз данных и SQL;

— Веб-разработка: основы CSS, HTML, JavaScript и PHP. Естественно, только самые азы;

— Основы подготовки презентации проектов по программированию.


Поддержите нас плюсом и подписывайтесь на нас и сообщество «Наука».

Показать полностью
27
Как relap.io тихонько может прихлопнут ваши сайты в поисковой выдаче
11 Комментариев в Лига фрилансеров  

Хочу сразу извинится за сей пост, понимаю что он был бы более уместен на более специализированно айти ресурсе, однако акаунта на хабре у меня увы нет. (Комент для минусов присутствует)

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


Кратко про relap.io - сервис предоставляет рекомендательный виджет, в котором собраны ссылки на материалы вашего сайта + там же маленький рекламный блок. Виджет используется на большом количестве сайтов, причем и на весьма крупных.


Выдержка про виджет с их же сайта:


"-Мы покажем вашу рекламу в рекомендательном блоке среди персонально подобранных для пользователя материалов;

-В этом блоке пользователь привык находить новую информацию;

-Реклама органично встраивается в статью и дополняет ее содержание;"


Теперь к сути. У меня есть свой небольшой блог и там был сей виджет установлен. С недавних пор заметил, что при клике в любую часть сайта, в лучших традициях говносайтов открывается новая вкладка с рекламой. Практически никакой рекламы на сайте я не устанавливал и первая мысль была - взлом. Единственным исключением по поводу рекламы был виджет от relap. После быстрой проверки он и оказался ответственным за внезапные открытия рекламных вкладок.


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


Сию фичу они похоже решили по тихому обкатать на мелких сайтах, однако повторюсь каких либо оповещений об "УЛУЧШЕНИИ РАБОТЫ ВИДЖЕТА" для своих пользователей не было. По крайней мере мне найти инфу об "улучшениях", ни у них в блоге, ни в у себя в почте, ни где либо еще - не удалось.


Почему это критично? Во первых подобные внезапные редиректы раздражают пользователей, во вторых гугл за такое карает и ваш сайт может уйти на дно поиска.


Итого - виджет должен улучшать поведенческие факторы и упрощать жизнь пользователей предлагая релевантный контент, а на деле фигачит рекламу в дикой форме.


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


P.S.

0) было бы интересно увидеть представителей relap.io в коментах, и узнать где они нашли столь эффективного менеджера по развитию проекта


1) справедливости ради надо заметить, что действительно после обращения в сапорт, внезапные открытия вкладок исчезли


2) к делу относится лишь косвенно, однако, считаю весьма символично, что у меня в качестве такой подленькой рекламы всегда открывался сайт посвященный творению отечественного синего-матографа "заshitники". тот самый где есть почти настоящий челмедведосвин


3) за редирект отвественне вот этот оверлей

Как relap.io тихонько может прихлопнут ваши сайты в поисковой выдаче relap, вебмастер, реклама, Вебсайты, программирование, seo
Показать полностью 1
3107
Тестирование программ
85 Комментариев  
Тестирование программ
1643
Симулятор эволюции на Unity + исходный код
189 Комментариев в Лига Разработчиков Видеоигр  

Здравствуйте, товарищи.

Так уж сложилось исторически, что я люблю разного рода извращения. И вот к чему меня это привело в этот раз:
Я написал симулятор эволюции, используя Unity.

Симулятор эволюции на Unity + исходный код программирование, разработка игр, unity, гифка, длиннопост

Суть происходящего:
В замкнутую среду помещается клетка, обладающая собственным геномом, состоящим из 64 случайных команд, расположенных в случайном порядке. Клетка выполняет все свои действия в соответствии с геномом. В зависимости от результата выполнения очередной команды, заложенной в гене, клетка переключается на команду в другом гене. Клетки живут в аквариуме, на который светит солнце. Клетки могут фотосинтезировать, чтобы восстанавливать свою энергию. Когда клетка накопит достаточное количество энергии - она делится. Если клетке пора делиться, но она со всех сторон окружена (нет свободного места) - клетка умирает, превращаясь в питательный трупик, который могут сожрать другие клетки.
Если у клетки заканчивается энергия - она умирает, не оставляя за собой трупа. Клетки могут жрать друг друга, и распознавать, родственник перед ними, или нет. При рождении каждой новой клетки есть 25% шанс, что один из её генов мутирует (одна из команд в алгоритме поведения изменится на другую случайную команду). Когда клетка фотосинтезирует - она зеленеет, когда жрёт органику - краснеет.


Всего клетка может выполнять 7 команд:
1 - смотреть прямо перед собой
2 - поворачиваться
3 - двигаться вперёд
4 - жрать объект перед собой
5 - фотосинтезировать
6 - проверять, сколько осталось энергии

7 - размножаться



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

Показать полностью 4
35
Не говнокодь
26 Комментариев  
Не говнокодь
1781
О дедлайне
56 Комментариев в IT-юмор  
О дедлайне работа, дедлайн, мотивация, программирование, it юмор

И еще бонус в комментах

1171
Зато честно.
22 Комментария  

Преподаватель студентам.

- Я Вам честно скажу, в этом институте программирование преподают ужасно. Студенты на выходе ничего не знают.

Студенты.

- Почему вы так считаете?

Преподаватель.

- Так я учу!

853
Сделал Google Chrome расширение для изучения иностранных языков
112 Комментариев  

Привет, пикабушники!

Недавно создал расширение для увеличения словарного запаса. Первоначально писал расширение для себя, но подумал, что может кому-то пригодится.

Работает оно так: вы добавляете слова, которые хотите выучить, в это расширение и слова будут периодически показываться вам всеми возможными способами. Таким образом рано или поздно, слова отложатся в памяти.

Ссылка в Chrome Web Store: https://chrome.google.com/webstore/detail/eachword-expand-yo...

Добавить слова:

Сделал Google Chrome расширение для изучения иностранных языков расширение, изучение языка, программирование, Google Chrome, EachWord, полезное, Chrome extension

И они будут периодически показываться вам как карточки поверх сайтов:

Показать полностью 2
36
Марио случайно взлетел
32 Комментария в Лига Разработчиков Видеоигр  
Марио случайно взлетел
334
Лучше Вирт
19 Комментариев  
Лучше Вирт
48
Вся суть 1С
27 Комментариев  
Вся суть 1С
148
Стилистические Войны программистов ( Часть 2 )
70 Комментариев в Лига программистов C/C++  

Мой предыдущий пост посвященный стилистическим войнам программистов к большому удивлению был очень тепло встречен пикабушниками и привел к немалому числу оживленных обсуждений в комментариях. :)

Поэтому я решил воплотить в жизнь еще пару-тройку жизненных картинок в этой тематике :)


// [0]

Стилистические Войны программистов ( Часть 2 ) программирование, c++, юмор, длиннопост

// [1]

Показать полностью 4
225
Неудачное кидалово
29 Комментариев в Лига фрилансеров  

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


Был однажды клиент, назовём его Алексей. Мыло Алексея я нашёл на форуме, где он просил мелкой помощи, обещая стабильно снабжать задачами и своевременно платить. В общем, всё как обычно. Почты у меня для фриланса тогда было две: одной пользовался чаще, другой реже. По ошибке написал Алексею с той почты, на которую почти не захожу, а потом исправился и написал с другой, таким образом создав ситуацию, где Алексей решил, что у него есть сразу два исполнителя.


Чтобы не было путаницы, назовём человека с первой (основной) почты Кириллом, а со второй - Сергеем. Дальше для разборчивости буду писать всё в третьем лице.


Алексей и Кирилл договорились о первом заказе: мелком, за маленькую сумму. Алексей из-за подозрений (можно понять) согласился только на постоплату. Кирилл всё сделал, своевременно получил свои 600 рублей и, казалось бы, начало хорошему сотрудничеству было положено. Дальше ещё были заказы за 800 рублей, 400 рублей, 200 рублей, а иногда даже за 100. Но Алексей продолжал сомневаться и лучшие условия, которые Кирилл сумел для себя выбить, предполагали 50% предоплату и соответственно 50% постоплату. И это бы вполне устроило Кирилла, если бы Алексей не начал задерживать вторую половину суммы - то на день, то на три, то на неделю. Иной раз новая работа появлялась раньше, чем вторая часть суммы за предыдущую. Сергей в это время молчал за ненадобностью, не получив ответа даже на первое письмо (зачем, если у Алексея уже есть Кирилл?).


Потом однажды случился заказ на 1200 рублей. Тоже мелочь, но в случае с Алексеем больших чеков не было и вряд ли могли бы быть (слишком уж ерундовые заказы). Алексей оплатил 600 рублей, получил выполненную работу и... пропал. Обещал деньги к вечеру. Кирилл дождался вечера, а потом прождал и следующий день, но денег так и не пришло. Тогда он написал Алексею, но не получил ответа. Он написал ещё раз через день, а потом снова через два - тишина.


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


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


Посмотрев на объёмы нового заказа, Сергей понимает, что цена им - рублей от силы 300. Но Алексею сообщает, что стоить всё будет аж 1500 рублей. Ответа не поступает.


Однако уже вечером того же дня Алексей снова пишет Кириллу, то есть своему первому исполнителю: "а сколько будет стоить вот это? извини, я уезжал на несколько дней, сегодня же вечером переведу оставшиеся 600 рублей за прошлую работу".


Отвечать Кирилл не стал, решив проверить, придут ли вечером деньги. Не пришли. Алексей, разумеется, не стал бы выплачивать долг без уверенности, что фрилансер возьмётся за следующий заказ. Тогда он ответил Алексею, что стоимость работ составит 600 рублей (вместо реальных 300), но полной предоплатой. Алексей заплатил 600 рублей долга и 600 рублей за новую работу, очевидно решив, что отдать Кириллу 1200 выгоднее, чем Сергею 1500. После этого заказа окончательно разошлись, больше Алексей ни одному из двух фрилансеров не писал.


А теперь вспомним, что обе почты с самого начала и до конца принадлежали одному человеку. А Алексею просто не удалось кинуть человека на деньги.

Показать полностью
1087
Мыслить позитивно
7 Комментариев  
Мыслить позитивно


Пожалуйста, войдите в аккаунт или зарегистрируйтесь