1773

История с Java...script

Серия История с Java...script

Устраивался как-то на одну из первых работ. Откликнулся на вакансию программиста в компанию местного провайдера. В описании ничего необычного, требуются знания HTML, JavaScript и чего-то еще, уже не вспомню.

Пришел на собеседование, меня без лишних слов отправили за компьютер сделать какую-то простую страничку. По сути это была верстка, даже не программирование. Что ж, задание есть задание. Сделал за 15 минут. Задание давал, как выяснилось исполнительный директор. После того, как я ему показал результат и его он устроил, был отправлен к другому директору, выше которого в компании уже никаких директоров нет.

Уселись с ним на диван, и он начал беседу: "Насколько хорошо ты знаешь Java". И делает паузу. Я напрягся. После двухсекундной паузы он все же произносит: "...script". Я с облегчением выдохнул: "Нет предела совершенству." Далее шел еще какой-то диалог, но не суть важно.

На первый рабочий день пришел другой программист и сразу выяснилось, что я нужен ему на замену, а он увольняется (или скорее его увольняют); поэтому он передает мне все дела, документацию и прочее. Когда он открыл проект, над которым работал в данный момент, то я покрылся холодным потом. Это был самый настоящий 100% натуральный код на Java. Он поинтересовался – с какого пункта надо объяснять. Я признался, что с нуля. Пути отхода я уже не видел. В голове промелькнули мысли про голодные дни, когда я снова ищу работу, и надо проходить собеседования. Поэтому я остался внимать суть по новому для меня направлению, тем более день собеседования уже был позади.

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

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

В итоге когда мозг совсем набух от влитых знаний, я принял самостоятельное волевое решение переписать проект на PHP, о котором никому не сообщил и принялся за переделку. На мой взгляд этот личный кабинет был очень простой и делать его на Java было неправильным решением. Я так понял, что тот, кто этим занимался, просто знал Java и ему было так удобно сделать. А то, что найти специалистов на замену будет сложновато как-то никто не думал. При этом я прибегнул к небольшой хитрости. Дело в том, что с этим проектом можно было работать только с ноутбука в офисе, во внутренней сети. Но я нашел лазейку, и отключил функцию засыпания ноутбука, когда крышка была закрыта. Уходя с работы, я просто закрывал крышку с незалоченным Windows, а из дома подключался к нему через удаленный рабочий стол и работал. Так я не был зависим только от рабочего времени и писал код вечером и ночью. Я только беспокоился на тему того, что кто-то надумает посмотреть что в ноуте в этом время, но вроде ничего такого не было.

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

В этой схеме все выглядело более менее гладко, если бы не человеческий фактор. Кое-какие функции я за незнанием бизнес-логики сделал по-своему, а большинство багов исправил. И это повлияло на то, что отдел операторов стал некачественно выполнять свою работу. Точнее они могли скрывать раньше свои косяки, ссылаясь на баги программы, но когда я эти баги исправил (но никому не сказал) - они продолжили это делать. Тут и случились нестыковки, но это уже другая история...

Лига программистов

2.3K постов12K подписчика

Правила сообщества

- Будьте взаимовежливы, аргументируйте критику

- Приветствуются любые посты по тематике программирования

- Если ваш пост содержит ссылки на внешние ресурсы - он должен быть самодостаточным. Вариации на тему "далее читайте в моей телеге" будут удаляться из сообщества

Вы смотрите срез комментариев. Показать все
22
Автор поста оценил этот комментарий

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

раскрыть ветку (66)
43
Poshanka!
Автор поста оценил этот комментарий
Синтаксис языка выучить - фигня, но не в синтаксисе дело. Сложно выучить фреймворк и инфраструктуру вокруг него, на это может не один год уйти.
ещё комментарии
13
Автор поста оценил этот комментарий

на переход с одного языка на другой двух недель хватает за глаза.

В C++ за 21 день?)

раскрыть ветку (49)
2
Carpe diem
Автор поста оценил этот комментарий

Примерно за неделю.

Столько у меня заняло в 94-м или 95-м от покупки книжки в "Библио Глобусе", до момента, когда я начал писать реальный проект, за который мне через полгода заплатили первых студенческих денег.

Да писал хуёво. Более того, мой коллега и наставник посмотрев мой говнокод сказал: "Cлушай, ты ж на Паскале пишешь!"

- Как? На C++

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

Я устыдился и переписал.

Году в 95-м мы показывали нашу разработку на МКФ, я даже на стенде там стоял. Народ интересовался. Программка выглядела красиво, не падала, работала на 80286 с "метром" памяти и VGA-монитором.

раскрыть ветку (41)
4
Автор поста оценил этот комментарий

Столько у меня заняло

Да писал хуёво.

¯\_(ツ)_/¯

раскрыть ветку (29)
0
Carpe diem
Автор поста оценил этот комментарий

Ну со временем научился лучше.

Если речь о том, чтобы пройти собеседование в какую-нибудь современную IT-компанию - это одно.

Если речь о том, что начать делать и оно заработало - другое.


По факту когда сейчас сталкиваешься с потрохами проприетарных разработок (исходники которых не выкладывают на гитхаб и не полируют годами тысячи бесплатных хомячков) - там говнокод на говнокоде.

раскрыть ветку (28)
4
Автор поста оценил этот комментарий

Ну со временем научился лучше.

Про это время и разговор.

ещё комментарии
0
ВЗДРЪЖНИ ЭФФЕКТ
Автор поста оценил этот комментарий
Почему же не выкладывают? Посмотрите на опенсорс, который делают компании. Где-то можно увидеть идеально вылизанный код, а где-то - спагетти, в котором в релизный билд идёт код из тестов, да ещё и перекрёстные ссылки на методы/классы из прода в тест и обратно.
раскрыть ветку (3)
1
Carpe diem
Автор поста оценил этот комментарий

Ну потому что не выкладывают. Потому что не опенсорс.

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

раскрыть ветку (2)
1
ВЗДРЪЖНИ ЭФФЕКТ
Автор поста оценил этот комментарий
И в корпоративе хватает, повидал. Короче, "не идите в айти - тут говно и палки". 😅
раскрыть ветку (1)
2
Carpe diem
Автор поста оценил этот комментарий

Я имел в виду "круче" == волосатее.

В корпоративе принципиально пишут ногами. Потому что все вчера надо было.

2
Автор поста оценил этот комментарий

Так вы именно не погрузились в язык. Нужно измерять время от покупки книги до момента, когда вы перестали писать на С++ как на Паскале

раскрыть ветку (1)
0
Carpe diem
Автор поста оценил этот комментарий

Ну я и не говорил, что за неделю я именно погрузился.

1
Автор поста оценил этот комментарий
Плюсану, я в 7 классе накатал игру на Юнити. Естественно со знанием C++ в виде 4 глав какой-то книги и C# в виде крестиков ноликов и часового объяснения моего друга. А, ну и 20 уроков на Ютубе по юнити начали это. На тот момент я знал: if, while, for и предполагал, что есть математические функции, в которых я не понимаю даже что такое синус). Сейчас этот проект остался на моем компе и мне очень страшно смотреть что же там творится в нескольких тысячах строк говнокода. Но, оно работает, работает достойно и я реализовал все что хотел.
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

В школьные годы на республиканской олимпиаде по информатике решил одно из заданий методом "озарения свыше".

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

Но задачу решало, т.е. разнообразные прогонки по "результат X на входе -> результат Z на выходе" проходило успешно.

0
Автор поста оценил этот комментарий

Так за неделю ты получается не язык выучил, а синтаксис. При этом, зная другой язык. Не будь этого бэкграунда, ты бы за такое время не начал ничего практического делать. С другой стороны, ты бы за это время что-то изучил, а тут получилось, что ничего нового не узнал, другими словами писал старый код. Была такая шутка, что-то типа "человек, знающий Паскаль, может писать на Паскале, используя любой язык программирования".

раскрыть ветку (5)
0
Carpe diem
Автор поста оценил этот комментарий

Ну тут опять вопрос что такое "выучить язык". Это синтаксис? Подходы к использованию? Библиотеки и фреймворки? Внутренние мезанизмы среды исполнения?

Можно изучать язык вечно, поскольку они развиваются, пока ты досконально изучить все нюансы существующих фич выпустят новую редакцию. Можно изучить синтаксис и начать что-то делать, а дальше "само изучится".

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

раскрыть ветку (4)
0
Автор поста оценил этот комментарий

Если под "выучить язык" подразумевать "выучить его досконально", то да, этим вечер заниматься можно.

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

раскрыть ветку (1)
0
Carpe diem
Автор поста оценил этот комментарий

Я согласен. Я тоже считаю, что за неделю реально стать квалифицированным разработчиком на каком-то языке. И даже за месяц.

С другой стороны я считаю, что квалифицированный человек не должен пугаться нового языка и считать его использование великим достижением. Это рутина в IT.

0
Автор поста оценил этот комментарий

Ха, я лет 15 на одном очень простом языке писал, а сюрпризы все не кончались. Причем это был именно язык, не библиотеки.

раскрыть ветку (1)
0
Carpe diem
Автор поста оценил этот комментарий

Так я и говорю, что изучать и встречать "сюрпризы" можно вечно.

Но работать это не мешает никак.

0
Автор поста оценил этот комментарий

Я сначала на классическом С начал писать на RT-11, а потом на Паскале пришлось немного поработать. По сравнению с С Паскаль был тяжелым и тупым.

Автор поста оценил этот комментарий

Справедливости ради на вакансиюю с++ не идут после курсов по HTML. Но тем не менее начать писать на нем какие нибудь базовые вещи за 2 недели можно. Тем более сейчас когда gptшки под рукой, если не тупо просить её код сварганить, а попросить объяснить что как и почему.

раскрыть ветку (6)
4
Автор поста оценил этот комментарий

gptшки под рукой

Так это навык работы с нейронками. Что за чудокод они будут выдавать и какие у него есть ограничения или огрехи - понимания толком не будет.

раскрыть ветку (2)
3
Автор поста оценил этот комментарий

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


Что касется гптшки они могут не только код выдавать но и обучать. Один запрос и уже есть понимание что это и зачем это. На это ушло 5 минут. За две недели можно запросто уже начать ковыряться в проекте и править мелкие баги.

Хз не понимаю о чем спор, о том что за 2 недели не станешь профи, не станешь, про это никто и не спорит но отвергать или переписывать проект потому что он написан на языке который ты не учил это бред.

Иллюстрация к комментарию
Иллюстрация к комментарию
Иллюстрация к комментарию
раскрыть ветку (1)
2
Автор поста оценил этот комментарий

в простых вещах

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


они могут не только код выдавать но и обучать

Это тоже обоюдно острый стул.


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


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

1
Автор поста оценил этот комментарий

начать писать на нем какие нибудь базовые вещи за 2 недели можно.

Освоить базовый SFINAE или умные указатели, ага)

раскрыть ветку (2)
Автор поста оценил этот комментарий

Я сказал про базовые вещи. Их будет достаточно чтобы начать понимтаь. что происходит и как всё устроено а не становиться синьёром в faange

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Окститесь, это не какой-то рокет-сайнс, а реалии современного C++. Если этими базовыми вещами не владеешь, то про "знание языка" или "переход" говорить как-то сомнительно.

11
Автор поста оценил этот комментарий
2х недель явно не хватает. Даже на том же языке чтобы хорошо погрузиться в контекст проекта нужны классические 3 месяца
раскрыть ветку (3)
3
Carpe diem
Автор поста оценил этот комментарий

Зависит от размера "проекта", не?

Зачастую переписать с нуля как-раз проще, чем "погрузиться в контекст" существующего глюкодрома. Особенно когда заказчик сидит через стенку и по факту 90% функционала не пользуется, потому что это наслоения предыдущих веков, задач и бизнес-процессов.

2
Автор поста оценил этот комментарий

поддерживаю. Пришëл как-то джуном на проект, который начали писать в 1999 году на Дельфи. 3 месяца вкуривал на испытательном сроке, помогали, естессно, задачи закрывал, но медленно. Кроме кода там бизнес логика навороченная. Короче, лопатил это всё за 40 т.р./месяц, упахался напрочь. Прошли 3 месяца, говорят, медленно работаешь, работай быстрей. Испытательный прошёл. Я говорю, ок, но к зп +10т.р. Зажали. Ушëл со спокойной душой. Ещё думаю, что такой пласт работы провернул, а теперь это всё в помойку.

0
Автор поста оценил этот комментарий

Так речь не про проект а про язык. Проекты разные бывают.

0
Автор поста оценил этот комментарий

Угу. Только вот это будет "Лондон из зе капитал оф греат бритайн"

0
Автор поста оценил этот комментарий

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

раскрыть ветку (2)
0
Автор поста оценил этот комментарий

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

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Ога. Особенно если он вдруг неожиданно перестает работать там, где до этого работал. Ну или не начинает...

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества