>>1908561 Как оформлено было? Где инвестиции брал? Как вообще монетизировал? Или ты думаешь что любое спижженое говно с гитхаба можно стартапом назвать?
Анон, вместо того, чтобы без разметки постить код, лучше шарь его через специальные ресурсы: https://ideone.com/ - возможность постить листинги кода и онлайн-запуска, не требует регистрации https://dumpz.org/ - можно постить листинги, не требует регистрации https://pastebin.com/ - для листингов, регистрация не обязательна https://www.codepile.net/ - можно расшарить код в том числе на редактирование, особая полезная опция - чат при каждом листинге, где можно код обсудить https://pyfiddle.io/ - запуск python кода онлайн, но чтобы шарить, надо регистрироваться
Вопросы-ответы: — А стоит ли читать Лутца, том номер N? Мнения в треде разделены. Кто-то за (очень неплохая база даётся), кто-то против (слишком много воды и объём книг убивает всё рвение). В общем — решать тебе, книга вредна не будет, но ты можешь её просто не дочитать и забросить.
— Стоит ли читать %книга_нейм%, если там питон версии 2.х? Нет, не стоит. 100% есть более актуальная книга, для пистона 3.х
— А что ещё можно читать? Питон сам по себе очень хорошо задокументирован и для уровня начинающих, и для продвинутого. Смотри официальную документацию. Можно начать вот с этого https://docs.python.org/3/tutorial/introduction.html
— Что можно почитать/посмотреть по многопоточности/параллелизации в питоне, да и вообще в целом? Очень годный ролик на американском языке про многопоточность и асинхронность https://www.youtube.com/watch?v=MCs5OvhV9S4
— А как учить джангу? Нахожу только книги по джанге 1.х У джанги отличные доки (одни из лучших для пистоновских либ, имхо), почитай их для начала. Книгу по джанге можно читать и для версий <2, это не проблема, т.к. принципы остаются теми же. Для переката на 2.х хватит changelog`a или тех же самых доков/статей. Начни изучать с разбора учебного приложения с голосовалкой из официальной документации.
— В ньюфаг-треде написано, что нужно начинать с SICP, чтобы научиться программировать Вот, пожалуйста, та же самая программа, но переработанная под язык Python: http://composingprograms.com/ (нужно знать ангельский или уметь пользоваться переводчиком)
— Как можно без лишней возни ускорить программу на питоне 1) проверь сначала свой код, алгоритмы и структуры данных. Чаще проблема здесь. 2) код можно иногда феерично ускорить, используя JIT (Just-in-Time) компиляцию. Почитай обязательно про модуль numba, он ставится через pip, и альтернативный интерпретатор PyPy.
— Дайте нормальные книжки на русском! Мы, блядь, не в пиндосии живём Брат, смотри книжки по ссылкам в шапке, там есть и русские. Но помни, без языка ангелов твоя жизнь проходит мимо и ты обречён быть на обочине знаний и технологий.
ps: анон, если ты вносишь изменения в шапку, оставляй ссылку на код с обновлённым исходником. исходник: https://dumpz.org/bASGKD8cCFDf
>>1910998 result = [i2 for i in range(1, 2020) if not i 2 % 4 if i2 % 8 if not i2 % 22 if i2 % 189]
Тоже мимо вкатываюсь, изучаю джанго, пока скучновато. Поясните, питонисты, в конструкции написанной выше же не будет каждый раз число возводиться в квадрат? Он же зарезервирует i2 в память и будет обращаться как к ссылке?
Сап прогроммач. Короч мне 30. Есть жена. Лечинок пока нет. Работаю на апворке. Уровень синьйор помидор - ларавель да ву джс, немного девопс. Проблем с поиском работы вроде не встречаю. Доход уровня 2-6к в мес. Живу в мухосрани, город миллионник. Денег тут девать некуда. На подобные зп можно намутить загородный дом в 5 минутах от центра и в хуй не дуть. Живи и радуйся как грится. НО сука люди... конечно не все, но есть кадры глядя на которых хочется сменить место жительства. В ДС не жил, но думаю что быдло там тоже присутствует. Был опыт путешествий, по месяцу/два. Можно опять куда-либо ехать, но все чаще думаю о переезде с перспективой получения паспорта.
И тут встает вопрос куда? Вопрос к тем кто заюзал трактор - как вы выбрали страну/город? Пока детально не изучал вопрос. Нравится истории про Канаду. Двойное гражданство, можно как понял и в рф быть и там на длительные строки. Но до рф добираться долго.
ИЗУЧЕНИЕ ЯЗЫКА Q: C чего мне начать, чтобы стать рубистом? A: Отличным началом будет Programming Ruby (The Pragmatic Programmers Guide), читать Eloquent Ruby и The Well Grounded Rubyist после прочтения первой толку особо не даст, одни и те же вещи, дальше читаем Ruby Way, затем познаем метапрограммирование с Metaprogramming Ruby. А дальше открываем Ruby cookbook 2015 года, Пишем свой код во время чтения.
Q: Следующий уровень, продвинутые книги по руби: A: Confident Ruby by Avdi Grimm | Practical Object-Oriented Design in Ruby Refactoring Ruby Edition | Ruby Under a Microscope
Q: Какой gem посмотреть, чтобы понять, как писать код? A: Лучше всего посмотреть небольшие gem'ы вроде cancancan, pundit, camping. Еще можешь полистать на гитхабе гемы с нарастающей популярностью (там еще нет тысяч строк, и тебе будет легче понять): https://github.com/trending?l=ruby
>>1916261 Более безмозглого вопроса тяжело себе представить, и ты его потащил в комунити. Потратил бы на него хоть пять минут своего времени, заметил бы, что переводов нет, что даже русскоязычные блоги пишут свои заметки на английском, вопрос бы ушел сам собой.
Если рассчитываешь получить дельный ответ, сформулируй правильно вопрос: «что я хочу получить, что я для этого делаю, что я вместо этого получаю». Если когда самостоятельно найдёшь решение — поделись в треде, мы за тебя переживаем.
Посоветуйте, аноны. В общем, я заебался, сижу в большой нищете, художник, 30лвл. Хочу вкатится в джаву. Ну вы понимаете, что я законченный хьюманитарий, но умею задротствовать, готов пахать. Устал от безденежья, хочу нормальную стабильную работку. Обрисуйте вообще ситуацию, я смогу нормально работать в этой сфере в 30 лет с полнейшего нуля, на какую деньгу могу рассчитывать с начала, чего ждать, куда копать. Спасибо, если кто не пройдет мимо и пожет, всем добра.
Неосиляторов тред #4 Или тех кто вкатывается
Аноним26/04/20 Вск 12:12:19№1667905Ответ
Определяемся с направлением, ищем способы эффективного обучения, быстрого вката, не сходим с ума в перерывах, временно устраиваемся охранниками в Пятерочку и между обходами дрочим Python. Откладываем фильмы, сериалы, игры в закладки на 5 лет вперёд, мечтая когда-нибудь посмотреть. Отличаем хорошие курсы от инфоцыган. Проходим собеседования с 20-летним тимлидом и идём к 300к/сек
Пилим стори кто на что учится и сколько! Почему не хотите оставить эти попытки и признать себя дауном
Сремся за отсутствие дженериков и ООП, смеемся с реализации дженериков в go2, спорим о том, какими скобочки должны быть на самом деле, пробрасываем ошибки, пытаемся понять почему код с каналами и многопоточностью работает медленнее, чем однопоточный код, находим по каждому крупному багу и косяку в языке пост в блоге го, который объясняет, что это фича, ищем обоснование, зачем дженерики не нужны, смеемся над оопэшниками, которые не могут жить без ексепшенов и DDD, дженериков и размазанной бизнес-логики, ждем, когда нам подвезут аналоги эксепшенов и дженериков
>>1877742 Чистый код читай. Если коротко - весь файл целеком ты все равно не запомнишь, неважно, там 2-3 экрана текста или 15, да и детали реализации методов не важны, пока ты не знаешь где и при каких условиях они вызываются (см любой доклад Григория Петрова, например вот https://www.youtube.com/watch?v=z5WkDQVeYU4). Тебе в любой момент времени, когда ты смотришь на код, важнее как методы между собой взаимодействуют, а на вопрос - что они сами, непосредственно, делают, тебе в значительной мере должно ответить имя метода. Если же нужно поподробнее - тогда переходишь в скоуп определения функции и уже там повторяешь эти же действия. В большинстве случаев ты , вызывая fmt.Printf думаешь о том, что он выведет тебе что-то в терминал, а не о том, что оно распарсит строку формата, для каждого аргумента чекнет, имплементит ли он один из 3-х методов, меняющих поведение преобразование их в стрингу, в случае дефолтного флага из строки темплейта, если он отличается от дефолтного, скорректировать так же приведение к стринге и на его основании, составит из этого всего слайс байт и запишет этот слайс в специальный файл операционной системы, чтобы результат вывелся на экран.
А тем временем я реализовал тот самый "стриминг" сообщений, про который писал ранее. https://github.com/catamphetamine/virtual-scroller Непростая задача была. Выкачен на сайте: https://catamphetamine.github.io/chanchan/ Если открыть DevTools, то можно увидеть, что рендерится "обманка": только несколько сообщений из всего списка ~500 сообщений, которые попадают в экран, а остальное — padding-top и padding-bottom. При скроллинге это всё подменяется в режиме "кручу-верчу, следите за руками". Как результат, рендеринг всего списка сообщений теперь не занимает секунду или более на современных настольных CPU.
Вторым фактором был парсинг сообщений — оказалось, что это тоже долго. Использовав встроенный в Хром "профайлер" увидел узкие места и кое-где кое-чего оптимизировал, плюс со стримингом теперь парсятся не все 500 сообщений сразу, а только те, которые видны. Итог: аниме-тред на 2500 сообщений теперь не виснет на 5-10 секунд, а парсится за 50 миллисекунд и рендерится так же быстро.
Ещё одна сложность была в том, чтобы правильно обновлять высоту элементов списка: всё достаточно просто, когда элементы списка не растут по высоте, но в данном случае можно нажать "Показать ответы", после чего высоты переизмерятся. К тому же, React не сохраняет компонент, когда он уже не виден, поэтому возникла ещё одна задача: сохранять state где-то, и потом, когда сообщение снова видно — восстанавливать этот state: всё древо раскрытых комментариев, и состояния для каждого из сообщений этого древа ("Показать текст полностью"). В общем, рекурсия на рекурсии, но я смог.
За кадром, конечно, было ещё много чего прочего.
А ещё я понял, что "хуки" всё-таки норм, и новые проекты можно писать на них. Пока ещё устоятся немного, народ потестирует. Плюсы: минификация кода, т.к. методы и переменные классов не минифицируются.
Сроки релиза пока можно сдвинуть на "ближе к осени", судя по всему.
--------------------------------------------- --- скриншот сделать и приаттачить --- ---------------------------------------------
>>1736151 > Ребята, а объясните что ОП сделал, покидайте скриншотов, а то скачивать неохото. А то написано про оболочку двача и в то же время какой то аниме тред на 2500 сообщений, какие то оптимизации, о чем речь идет не понимаю Да, да, не редактируемая шапка. ОП делает универсальный альтернативный интерфейс имиджборд, и пишет в данный тред как в бортовой журнал.
>>1753263 > Опчик, можешь починить сайт? Ничего не трогал. Немного порефакторил код и немного изменил дизайн комментариев. Выкатил. Вроде работает? https://captchan.surge.sh/2ch (кольчан разве что не грузился, но они там немного шатали API; исправлено)
>>1768517 > ОП, зачем??? > я не знаю как замерить сколько памяти требует, но процесс резко подрос на сотку и рос дальше всего лишь при прокрутке 4chan/b на 50 постов вниз. > тормозит просто адово. Да, тормозит. Что тормозит конкретно? Ящитаю, рендеринг Реактом. Ещё там есть парсинг из HTML в "древовидную" JSON-овую структуру, но по сравнению с ним рендеринг занимает может быть на порядок больше процессорного времени. Потому что:
>> 1768518 > охуеть достижение. это же просто текст с картинками блеать. А вот так вот: не может Реакт просто так взять и отрендерить "просто текст и картинки". Казалось бы... Зато он удобен для того, чтобы фигачить быстро и менять на ходу. А вот ежели устаканится, то можно будет и переписать на православных шаблонах, как деды делали. Вон, у Абу до сих пор работает, и причём быстрее всех новомодных технологий.
>>1768520 > только не иди в авиакомпании, медицину и банковский сектор, умоляю! Да мне уже идти куда, после 30-ти. Разве что на "пенсию". Но на "пенсию" (так называемый "early retirement") я ещё не заработал, потому что пинал болт в свои 20-ые годы.
>>1768524 > в чем ты пишешь стили и js, что там строки без переносов длинные. как это читать? Комментарии, скорее всего. Я хз, как этот JSDoc писать — я чё-то просто фигачу в одну строку всю документацию параметров (@param). Хз, можно ли там её переносить по строкам. Вообще, читать код, особенно через полгода, скажем, даже свой — это то ещё развлечение...
--------------------------------
Чейнжлог, по мелочам:
1. Немного изменён дизайн комментариев: значки и время теперь внизу и справа. Время теперь в стиле твиттера. Автоматически сгенерированные цитаты теперь по умолчанию скрыты — выяснилось, что так легче читать тред "беглым взглядом". Потом сделаю автоматическое раскрытие их по наведению курсора мыши (с небольшой задержкой), как здесь сделано. Убрана кнопка "ответить" — это дело будет по "long press" или по double click.
2. (по мелочи) При повторном заходе в тред показывается самое позднее из уже прочитанных сообщений (но в "сером" цвете). Сделано это для того, чтобы пользователь мог сразу увидеть, действительно ли он их читал ранее, и что программа не глючит и что сообщения не были пропущены. Потом допишу, чтобы при заходе в тред автоматически перематывало scrollbar так, чтобы новое сообщение (или надпись "Нет новых комментариев") было наверху экрана, мб где-то на 25% высоты от верха. И выводить будет не одно "предыдущее прочитанное", а, например, штуки 3-4.
3. (по мелочи) Индикатор загрузки вида "крутилка" заменён на индикатор загрузки вида "полоска сверху".
4. (по мелочи) Убран "плавающий хедер".
5. (по мелочи) У названия треда добавлен индикатор статуса "онлайн": жёлтый, если были комментарии за сутки, зелёный, если были комментарии за час, зелёный с пульсацией, если было два и более комментария за 15 минут.
6. (заморочки) Комментарии помечаются как "прочитанные" в localStorage. Соответственно, на каждом проскролленном комментарии происходила запись в localStorage. Если учесть, что у современных SSD не бесконечное количество циклов перезаписи, возникал вопрос: насколько вообще такое поведение сайта законно. Нашёлся багрепорт где-то в issue-трекере Хрома, в котором разработчикам указывали на это, и они кое-как добавили где-то внутри Хрома ограничитель, пишущий в localStorage не чаще одного раза в 5 секунд. https://bugs.chromium.org/p/chromium/issues/detail?id=52663#c161 . Далее, возник вопрос о том, насколько активно вообще Хром, да и все остальные, пишут что-то на диск. Было нагуглено, что в Windows можно запустить программу "Resource Monitor", в которой видно, что Хром в "положении без движения" пишет около 200 KB каких-то данных в секунду, что почти сравнимо с тем, что пишет на диск сама Операционная Система по каким-то там своим делам. В общем, все пишут на диск, и пишут неслабо так, и вроде как диски живут, так что хз. На всякий случай, написал кеширующую обёртку над LocalStorage, которая сохраняет статус прочитанности комментариев на диск раз в минуту, или каждый раз при изменении "visibility" текущей вкладки (см. Visibility API): visibility меняется каждый раз, когда пользователь закрывает вкладку, или переходит на другую вкладку, или сворачивает окно, или нажимает кнопку "Домой" на мобильном устройстве.
Запощу маленькое обновление, чисто бампануть тред. Добавил автообновление текущего треда. Добавил раскрытие твитов по клику в модальном окне.
Добавил кнопку "Ответить" при выделении текста. Сам постинг при этом, естественно, ещё пока не сделан. В целом, было много разного рефакторинга.
Сроки готовности первой версии переезжают где-нибудь на лето.
Всякое-разное, оффтопное: Оказывается, существует свойство CSS: "content-visibility: auto". Его можно, в теории, применять для "виртуализованных списков" (то, что сейчас делает `virtual-scroller`). https://web.dev/content-visibility/ Суть этого свойства в том, что какой-нибудь <div/> помечается как "content-visibility: auto", и ему проставляется "contain-intrinsic-size" в пикселях (предполагаемая высота блока), и в таком случае этот блок не рендерится, пока пользователь до него не докрутит. Когда пользователь докрутил — рендерится. Когда прокрутил дальше — снова не рендерится. При этом обозреватель правильно обрабатывает скролл, чтобы ничего не скакало и не прерывалось. Также можно ставить это свойство не в "auto", а в "hidden" (в статье написано), и в таком случае оно даже без "contain-intrinsic-size" не будет рендериться. Чем это лучше "display: none"? Тем, что "состояние" DOM элемента не обнуляется, то есть, можно спрятать и потом снова показать. Чем это лучше "visibility: hidden"? Тем, что "visibility: hidden" — рендерит, даже если и не показывает. Доступно в обозревателях Chrome и Firefox (вроде в них).
Ещё как-то давненько заметил, что этот проект в хроме стал подлагивать: то меню открывается с задержкой, то слайдшоу закрывается с задержкой, то ещё чего. В итоге выяснилось, что это в Chrome в край офигевшие гугловцы добавили ещё один свой "костыль": задержку на неопределённое время на любой `setTimeout()`. То есть, допустим, пишете вы `setTimeout(30)`, то есть через 30 миллисекунд, а он вызывается через две секунды. А чё, нормально, мы с пацанами тут обсудили: нашей корпорации выгодно, чтобы пользователи залипали в интернете, и чтобы наша реклама не лагала, а эти ваши сайты нас не колышат, поэтому вот. Вот к чему монополия приводит.Пришлось написать эмулятор `setTimeout()` через `requestAnimationFrame()`: https://www.npmjs.com/package/request-animation-frame-timeout Казалось бы, всё просто. Ан нет. Оказалось, что `requestAnimationFrame()` не работает, если вкладка обозревателя находится в фоне. Короче, есть два стула: на одном — setTimeout(), который может быть вызван через любое время, на другом — requestAnimationFrame(), который не будет никогда вызван, пока вкладка находится в фоне. На каком интерфейсный компонент напишешь, а на каком — автообновление треда повесишь?
Ещё узнал, что есть какой-то новый клиент iChan. В мессенджере на букву Т есть по названию "ichan_android". Или автор немного дизайнерских фишек у меня подглядел, или сам придумал. Судя по всему, какой-то грамотный чел пишет. Ещё заметил, что на сайте Двача добавили плавную анимацию показа ответов при наведении мышью. Я сначала воспринял не особо, а потом посмотрел — вроде тоже нормально. Как лучше? Я бы сказал, что мгновенно — лучше, потому что это "не встаёт на пути" у пользователя, который просто хочет посмотреть, чего там написано, без задержек, без "кина". С другой стороны, с анимацией более "человечный" интерфейс. Более человечный — не всегда лучше, зависит от аудитории. Кому-то, наоборот, окошки Windows 95 — ностальгия и атмосфера. В общем, критиковать не стану (изначально собирался).
Также, поймал на Дваче баг с "подмешиванием" чего-то к чему-то у JSON API: https://2ch.hk/d/res/421281.html#795654Суть такова: есть предположение, что иногда (достаточно редко) API возвращает невалидный JSON вследствие некоего "перемешивания" данных (вероятно происходящего по неизвестным причинам). Что к чему подмешивается — хз. Написал простой скриптик, который, после может быть получаса работы, поймал баг невалидного JSON-а.Пример невалидного JSON-а: https://pastebin.com/1Sxid7Fc Как проверяется: копируется, вставляется в форму на сайте https://jsonlint.com/ , и жмётся кнопка "Validate JSON". Скрипт на Node.js, ловящий баг, если нужно: https://pastebin.com/n4PKxHG7
Ещё переписал свою давнишнюю библиотеку форматирования времени вида "time ago": https://www.npmjs.com/package/javascript-time-ago https://www.npmjs.com/package/react-time-ago А то руки не доходили. Теперь можно пользоваться. Пока искал в очередной раз по работе компонент Date Picker'а (извечная тема), увидел интересную дизайнерскую систему компонентов от IBM (зумера походу уже не знают, что это за компания). Называется "Carbon Design System": https://www.carbondesignsystem.com/components/dropdown/usage/ Прикольно смотрится, прямо веет от неё 80-ыми и 90-ыми. Шрифты рублёные, моноспейсовые. Всё прямоугольненькое такое, без гейских анимаций. В реальном проекте я бы такое использовать не стал, т.к. стиль достаточно "холодный": подошёл бы для какого-то интерфейса администрирования какой-нибудь установки, но не для сайта, и даже не для среднестатистической админской панели.
Ещё тут начал варить супы, потому что от остального что-то как-то в желудке было не совсем комфортно. Борщ — это круто. Я теперь каждый день варю, из говяжьих рёбер или говяжьих костей. Кости — вообще тема, стоят 110 рублей за килограмм, и с одного килограмма можно за 5 часов наварить наваристого бульона. Свеклу только не ем (вынимаю), а то от неё газы. Ем без сметаны, потому что от сметаны кислотность что-то того. Ещё, на "волне" газов, немного занялся темой восстановления микрофлоры кишечника: https://www.youtube.com/watch?v=O-55HZ5GiKY https://www.youtube.com/watch?v=lkgV0PR5aiw
Ещё слушал старые подкасты профессора Савельева, и он там сказал, что в день нужно минимум 2 часа находиться на солнце, чтобы вырабатывался серотонин, из которого потом будет вырабатываться мелатонин. И что стекло фильтрует ультрафиолет, поэтому за стеклом вроде как "не считается". https://www.youtube.com/watch?v=VE8v2lbPG3A
Ещё у профессора недавно вышло очередное видео про его "проект" создания искусственного разума: оказывается, электрические сигналы в мозге не несут информации, а являются лишь управляющими сигналами, а информация передаётся какой-то комбинацией двадцати нейромедиаторов, или типа того. И они там что-то моделируют по этой теме. И желающим предлагают присоединиться. Я отправил заявку, уже год прошёл, но мне не написали. Видимо, "веб-макаки" там не особо требуются) Видимо, надо выбираться постепенно из фронтенда, чтобы не деградировать. https://www.youtube.com/watch?v=dOGVmAACTLU
C Programming Language #66 /clang/
Аноним# OP04/12/20 Птн 20:21:00№1873113Ответ
Тред, посвященный прародителю всех С-подобных языков и по совместительству единственному идеальному и всесторонне годному средству программирования как на системном, так и на прикладном уровне.
- Очевидный GCC. - clang: оче годно, батя рекомендует. - Intel C++ Compiler: оптимизации, тысячи их. - Visual Studio Community Edition: внезапно этим стало можно пользоваться, особенно с тулсетом clang/C2. Поддержка C11 на уровне "есть все, что тебе понадобится в реальном проекте плюс кривая библиотека". Анализатор кода в комплекте. - Pelles C (шиндоуз онли): поучиться, вкатиться в C11 (стандарт полностью реализован, имеются в том числе threads.h и прочие stdatomic.h), но количество багов в оптимизаторе и редкие апдейты напрочь отбивают желание собирать этим что-то сколько-нибудь серьезное. - TCC: очень маленький компилятор с багами и поддержкой C99. С ключом -run умеет компилировать код в память и запускать его, что позволяет писать скрипты прямо на сишечке.
Samuel P. Harbison, Guy L. Steele Jr. "C: A Reference Manual, 5th Edition" (2002) Ебаный пересказ стандартов C89 и C99 (включая стандартную библиотеку). Для не осиливающих стандарт в оригинале. Читать в качестве подготовки к собеседованиям (есть задачник с ответами) и для ознакомления с масштабами пиздеца перед написанием своего парсера/компилера.
Peter Van Der Linden "Expert C Programming. Deep C Secrets" (1994) "Си: грязные истории". Смехуечки, немного объяснений, чем обусловлены особенности языка, всем известные подводные камни кто там ругал косяки в JS? у нас в сишечке их гораздо больше, просто они лучше спрятаны, немного байтоебли и непонятно откуда взявшаяся глава про старинные плюсы. Читать в качестве сказки на ночь (на пару вечеров хватит).
Richard M. Reese "Understanding and Using C Pointers. Core Techniques for Memory Management" (2013) - почитать, вкатиться в указатели.
Ben Klemens "21st Century C: C Tips from the New School" (2012)
Paul Deitel, Harvey Deitel "C for Programmers with an Introduction to C11" (2013)
Stephen G. Koch@n "Programming in C (3rd Edition или 4th Edition, если найдется)" (2014)
- https://godbolt.org/ - Compiler Explorer позволяет посмотреть выхлоп компиляторов для введенного куска кода (больше полусотни разных версий компиляторов). - http://cdecl.org/ - С Gibberish ↔ English помогает читать сложные сишные декларации.
Сап, программач. Начал совсем недавно учить питон, буквально недели 3 назад, прохожу курс от Geekbrains, объясняют понятно, все нужные основы теперь более-менее знаю и применяю. Хочу вкатиться погромистом, но не знаю куда конкретно. И тут вспоминаю про вышеупомянутых. Думаю теперь - брать их платные курсы на год или нет, и если да, то у кого лучше? И главное - не наебалово ли? ньюфага тред, помогите и задавайте ответы
Значит так блять Почитал я этот треды и скажу вам так Платные курсы нужны если вы совсем тупой и а) Не нашли бесплатные (А их много очень много тут видел питонистов могу посоветовать на степик огромный курс с большим количеством задач) б) Не умейте читать книги (тут скажу что не всем дается анализировать прочитанное) если у вас не получилось одно то возьмите книгу по проще или язык если уж совсем плохо( потом вернетесь) также много видео где все разжевывают и кладут в ротик. Есть питон для детей если вообще не выходит если вы попробовали все перечисленное и у вас не получилось вообще ничего то а) 98% вы ленивый распиздяй а тут надо приложить усилие и напрячь не очко как обычно а лобные доли. Порог вхождения в IT всегда высокий. б) 2% у вас инвалидность сходи проверься пособие выдадут. P/S Записывайте всю важную инфу понятным для себя языком. P/P/S Пишите код даже посмотрев 100500 мильонов курсов без практики написания вы никто
Обзор языков #4 Холиварим лучший!
Аноним20/08/20 Чтв 06:00:52№1782312Ответ
C# (.NET core) - язык вроде и кроссплатформенный стал, но хер пойми где какие и куда либы. Синтаксис и возможности в свое время увлажняли многие бородатые умы, но по состоянию 2020 синтаксис уже протух.
Kotlin - наконец-то на жабе стало удобно писать. Стало настолько модно и молодежно, что напряглись даже шорписты. Если вы хотите пробустить вашу джаву, то котлин без вариантов.
Python - язык создавался гением, поэтому не такой как все во всех смыслах. Петухон стоит брать только, если вы хотите стать инфоцыганом и зарабатывать на курсах. Это сейчас золотая жила для развода "хочух в айти".
Scala - очередной продукт гениев, создан чтобы восхищаться, а не писать на нем. Все мы знаем что ФП языки нужны, чтобы работники банка или формошлепы могли самоутвердиться. Хоть иногда встречаются победили, которые не поняли фишку ФП и на полном серьезе пытаются что-то разрабатывать, но в реальности все понимают, что о ФП интереснее пиздеть с товарищами или сраться на бордах, чем пробовать на этом что-то написать.
Ruby - магическая, тормозная, багнуто-кроссплатформенная херня. Выстрелила благодаря рельсам, откуда все фреймворки потаскали понравившиеся фичи и забыли.
JavaScript - если с фронтендом я еще смирился и с новыми версиями даже полюбил немного (стокгольмским синдромом, не иначе), то вот сам node.js это кусок говна, который по ощущению пилился студентом. Даже JavaScript не заслужил такого издевательства. А ведь реально могли запилить все на корутинах и сделать нам "нормальный" Go.
PHP - по прежнему топ в вебе, от чего поджигает пуканы всем остальным. Каким-то хером, какой-то долбаеб, засунул туда полный комплект ООП, от чего макаки просто замесили тонну трудно сопровождаемого тормозного кода.
Rust - очередная попытка победить С/C++, возможно попытка была бы и удачной, но комьюнити больше волнуют политические проблемы. Со слов хейтеров все выглядит сыро и бестолково (даже говорят о зависающих асинках). Язык, почему-то, привлекает бэкендеров, хотя даже уборщика кабинета информатики знает, что быстрый код надо уметь еще писать, о чем постоянно напоминает techempower.
Go - Тот язык в котором нет стектрейса во время ошибок и в котором руками надо пробрасывать эти ошибки - просто непригоден для серьезной разработки (можно, способных много, но нахрена?). Одно дело когда у тебя Си 1970 года и сам язык просто представляет обертку над ассемблером, другое дело в 21 веке позорится таким сырым говном. И да - лол, нет дженериков.
>>1899421 Чтобы понять hot code reloading (на самом деле это не то, но не суть), возьми любой лисп (или смоллток, если боишься скобочек).
Из предложенных для изучения во время новогодних праздников годятся только ним и раст. Остальные никаких новых концепций тебе не откроют, поэтому их изучение в формате "для себя" бессмысленно. Если хочется когда-то эти знания еще и применить на практике, то остается только раст.
Сап програмач хочу вкатится в пинтест есть знания php и python так же основы понимания работы компьютерных сетей и операционных систем и базовое владение linux. Подскажите как развиваться дальше
Сап, Аноны. Хочу поднять важную тему для умных людей, которая редко где обсуждается сейчас. Тем не менее, она серьёзная и крайне недооцененная, на мой взгляд.
Речь идёт о массовом притоке в IT левых людей. Позвольте мне пояснить, что я имею в виду. Я помню IT конца 2000-x. IT 90-x лично не застал, но есть знакомые мастодонты из тех времен, обсуждал с ними данный вопрос. И мой личный опыт, и их мнение совпадают - до массовой популяризации среди нормисов IT было гораздо, гораздо лучше. Не в плане атмосферы, хотя и это тоже - в плане качества. Программисты были немногочисленны, и это были в основном бородатые админы в cвитерах, которым платили не так много, как сейчас, но они действительно любили своё дело. Это были люди, у которых горели глаза и которым нравилось ковыряться в железе, выжимая из него все соки.
Сейчас же, в связи с массовой компьютеризацией практически всего и вся, спрос на специалистов резко вырос, и вслед за этим резко скакнули зарплаты. Программирование стало денежным, и туда потянулись многочисленные "вайтшники" без души и без достаточного ума. Сейчас 2020 год, и я в шоке от того, какие размеры это приняло. Везде бесчисленные курсы "научим кодить за 6 месяцев с поиском работы!", и ведь пипл хавает. Потому что ойти - единственная отрасль в постсовке, да и на Западе, где можно честным трудом заработать относительно нормальные деньги.
Но ведь это будет иметь последствия. Говнокода и сейчас хватает, а представьте, что будет, когда в индустрию потянутся люди, которые программировать не любят и не умеют, пришли туда исключительно за длинным баксом? Для того чтобы быть успешным программистом, надо иметь специфический склад характера и хорошие мозги, и нормисы точно не такие. Я скучаю по тем временам, когда программирование было чем-то неведомым широким массам: платили, может, и немного, но зато при этом качество и людей, и кода было вполне на уровне.
А тот процесс, что происходит сейчас, на мой взгляд, будет иметь последствия в виде инфляции зарплат в IT-сфере и заметное снижение качества программного продукта.
>>1744054 (OP) Дебилов всегда будет много. Умных людей которые опираются на ум где нужен расчет, знания и смекалка, единицы. Значит остается что-то по типу разработки электроники, хацкеля и то где желательно знание математики. Специалисты никогда не будут получать мало т.к. их заменить толком некем.
Напоминаю: все причастные к айти люди, унижайте вкатывальщиков везде, где их встречаете. Если вы проводите интервью, либо отбривайте еще на этапе просмотри резюме, либо валите на собесах. Лучше взять молодого студента или школьника, чем эту наглую, вонючую гниду. Выгоним нахуй этих петухов-неудачников из айти и отправим сосать хуй.
Как работают CSRF токены? Я понимают, от какого
13/06/20 Суб 17:07:53№1721518Ответ
Как работают CSRF токены? Я понимают, от какого типа атак они защищают, но блядь, хуй нагуглишь как они работают, кем куда вставляются, и как проверяются.
Кто-нибудь может понятно это описать. Типо A обращается к B, B передаёт А и всё в этом духе.
НЕЙРОНОЧКИ И МАШОБ ТРЕД №33 /ai/
Аноним16/12/20 Срд 02:39:25№1881607Ответ
Очередной тред про хипстерские технологии, которые заменили нам Иисуса
Я ничего не понимаю, что делать? Вкатывальщики импортят slesarplow as sp по туториалам (хотя сейчас актуальнее pytorch) Толковые качают из репозитория awesome-XXXX на гитхабе проект какого-то китайца, меняют фамилию и получают $10M инвестиций как стартап. Умные смотрят prerequisites на https://see.stanford.edu/Course/CS229 и http://cs231n.stanford.edu/ Остальные сидят ИТТ
Какая математика используется? В основном линейная алгебра, теорвер, матстат, базовый матан и matrix calculus
Можно не python? Никого не волнует, где именно ты натренируешь свою гениальную модель. Но при серьезной работе придется изучать то, что выкладывают другие, а это будет, скорее всего, python, если работа последних лет
Что почитать для вкатывания? http://www.deeplearningbook.org/ Николенко "Глубокое обучение" - на русском, есть примеры, но меньше охват материала Франсуа Шолле - Глубокое обучение на Python
Где набрать первый самостоятельный опыт? https://www.kaggle.com/ | http://mltrainings.ru/ Стоит отметить, что спортивный deep learning отличается от работы примерно так же, как олимпиадное программирование от настоящего. За полпроцента точности в бизнесе борятся редко, а в случае проблем нанимают больше макак для разметки датасетов. На кагле ты будешь вилкой чистить свой датасет, чтобы на 0,1% обогнать конкурента.
Количество статей зашкваливающее, поэтому все читают только свою узкую тему и хайповые статьи, упоминаемые в блогах, твиттере, ютубе и телеграме, топы NIPS и прочий хайп. Есть блоги, где кратко пересказывают статьи, даже на русском
Где ещё можно поговорить про анализ данных? http://ods.ai/
Нужно ли покупать видеокарту/дорогой пека? Если хочешь просто пощупать нейроночки или сделать курсовую, то можно обойтись облаком. Google Colab дает бесплатно аналог GPU среднего ценового уровня на несколько часов с возможностью продления, при чем этот "средний уровень" постоянно растет. Некоторым достается даже V100. Иначе выгоднее вложиться в GPU https://timdettmers.com/2019/04/03/which-gpu-for-deep-learning/ Заодно в майнкрафт на топовых настройках погоняешь
Когда уже изобретут AI и он нас всех поработит? На текущем железе - никогда, тред не об этом
Кто нибудь использовал машоб для трейдинга? Никто не использовал, ты первый такое придумал. Готовь камаз для бабла.
Список дедовских книг для серьёзных людей: Trevor Hastie et al. "The Elements of Statistical Learning" Vladimir N. Vapnik "The Nature of Statistical Learning Theory" Christopher M. Bishop "Pattern Recognition and Machine Learning" Взять можно тут: http://libgen.io/
Напоминание ньюфагам: немодифицированные персептроны и прочий мусор середины прошлого века действительно не работают на серьёзных задачах.
Если рассчитываешь получить дельный ответ, сформулируй правильно вопрос: «что я хочу получить, что я для этого делаю, что я вместо этого получаю». Если когда самостоятельно найдёшь решение — поделись в треде, мы за тебя переживаем.
>>1902272 Как минимум в вс код есть дебаггер и в принципе у ноды есть какие-то выходы для дебага. Но анон выше правильно сказал, единственное, что намертво замораживает процесс - это такое выделение в консоли.
Роллишь язык, пишешь, постишь итт. Отличный шанс познакомиться с разными парадигмами и попробовать новый способ мышления. Если выпал язык, который ты знаешь хорошо, попробуй реализовать задачу нестандартным или наиболее идиоматическим способом.
Привет, аноны. На год вперед у меня не будет доступа к ПеКарне, ибо армия. Есть ли возможность хоть каким-либо инвалидным способом изучать программирование с телефона?
Elixir — функциональный, распределённый язык программирования общего назначения, работающий на виртуальной машине Erlang (BEAM). Обеспечивает распределённость, отказоустойчивость, исполнение в режиме мягкого реального времени, метапрограммирование с макросами и полиморфизмом, реализованным через протоколы.
Elixir успешно применяется в Discord, Facebook, WhatsApp, Pinterest и в куче других крупных проектов.
Первые две - мастхэв для новичков (можно читать любую из), так как дают основы языка и вообще функционального программирования, что особенно полезно для перекотов из императивных языков. Вторые две - набор best practice.