metaclass: (Default)
[personal profile] metaclass
Вместо того, чтобы писать на хипстеруби хипстовебопердени или хотя бы изобретать систему типов для нового кодогенератора за деньги - сижу обслуживаю базы данных и софт на белорусских госпредприятиях в свободное от работы время.
Кроме меня, видимо, некому - задачи вида "сервер зачем-то сожрал всю свободную память" или "нужно заменить версию сервера на более новую" нужно сначала сделать самому, а потом только автоматизировать или писать инструкции для коллег.
И то, это помогает только в случае "все работает как ожидается", а когда что-нибудь идет не так - квалификации людей не всегда хватает даже на то, чтобы проблему заметить, не говоря уже о том, чтобы ее решить. Пошаговые инструкции в случае нетривиальных проблем не помогают.

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

Date: 2013-08-14 12:40 am (UTC)
From: [identity profile] golosptic.livejournal.com
Ребе, не спасёт

Date: 2013-08-14 12:46 am (UTC)
From: [identity profile] metaclass.livejournal.com
Линукс заведомо спасет от проблем вида "пришли психи с биполярным аффективным расстройством и поставили на сервер БД касперского, акронис, сервер системы видеонаблюдения от васи пупкина, а так же Mail.Ru agent и utorrent".

Date: 2013-08-14 12:51 am (UTC)
From: [identity profile] golosptic.livejournal.com
Ну они поставят это в ДРУГУЮ виртуальную машину. И потом биполярно настроят сервер.

Date: 2013-08-14 01:00 am (UTC)
From: [identity profile] golosptic.livejournal.com
сервер видеонаблюдения запустят от рута в корневой ноде, а не в виртуалке

скрипту веб-интерфейса просмотра видео, вывешенному в интернет, поставят права 777

Date: 2013-08-14 06:32 am (UTC)
From: [identity profile] eternal-leave.livejournal.com
На esx не поставят

Date: 2013-08-14 07:42 am (UTC)
From: [identity profile] golosptic.livejournal.com
Они найдут способ, поверьте :)

Date: 2013-08-14 02:45 pm (UTC)
wizzard: (photo24)
From: [personal profile] wizzard
а в чем сложность насыпать всякого гавна в esxi? :)

Date: 2013-08-14 12:46 am (UTC)
From: [identity profile] x-a-e-p.livejournal.com
наверное, про это спрашивали уже тысячу раз - а может нахуй такую работу?

Date: 2013-08-14 12:49 am (UTC)
From: [identity profile] metaclass.livejournal.com
Ну вот я раза четыре уже пытаюсь отсюда съебать, но везде еще хуже - доступа к продакшену не везде есть, клиенты еще более психи, проекты тыщекратно более безумные итд, в багтрекеры не умеет никто и никак.

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

Date: 2013-08-14 12:52 am (UTC)
From: [identity profile] x-a-e-p.livejournal.com
Так сваливайте не в бодишоп, а в самостоятельную контору, так чтобы без заказчиков и т.д.

Date: 2013-08-14 12:56 am (UTC)
From: [identity profile] metaclass.livejournal.com
А я в бодишопы вообще даже не хожу, только самостоятельно или в микро-конторы.

Date: 2013-08-14 05:29 am (UTC)
From: [identity profile] worm-ii.livejournal.com
Без заказчиков — это голубая мечта, да...

Date: 2013-08-14 12:51 am (UTC)
From: [identity profile] metaclass.livejournal.com
И да - меня это никто делать не заставляет. В принципе. Потому что, по причине наличия других, более оплачиваемых работ, на меня нет никаких методов влияния.

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

Date: 2013-08-14 12:57 am (UTC)
From: [identity profile] x-a-e-p.livejournal.com
Так блин, bus factor == 1, тут надо не думать, как всё улучшить/починить, а 'преемника' готовить, лучше трёх

Date: 2013-08-14 01:11 am (UTC)
From: [identity profile] metaclass.livejournal.com
Думаем, да. Но три преемника означает:
1) никаких сторонних работ. Т.е. мне 3х к зарплате сразу на основной работе, без вариантов.
2) никакой разработки - только обучение.
3) преемники нужны сугубо разных профилей, каждому надо давать бабла столько сколько я сейчас получаю - иначе никто, кроме совсем тупиц даже не придет. А если и придет - то уйдет через неделю. Слишком сложно, ответственность, требуется много самостоятельной работы, итд.

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

Date: 2013-08-14 06:37 am (UTC)
From: [identity profile] xeno-by.livejournal.com
Так если готовы, то в чем проблема?

Date: 2013-08-14 08:59 am (UTC)
From: [identity profile] inhate.livejournal.com
Учить людей это майндфак, даже если они не тупы.

Date: 2013-08-14 05:04 am (UTC)
From: [identity profile] http://users.livejournal.com/_slw/
только не линух, а фря

Date: 2013-08-14 07:43 am (UTC)

Date: 2013-08-14 07:31 am (UTC)
From: [identity profile] vinslivins.livejournal.com
ну таки рууби луучше чем кложа, даа?

Date: 2013-08-14 08:13 am (UTC)
From: [identity profile] metaclass.livejournal.com
Нет. Полное говно.

Date: 2013-08-14 08:15 am (UTC)
From: [identity profile] vinslivins.livejournal.com
а почемууууу :( :( :(

Date: 2013-08-14 08:18 am (UTC)
From: [identity profile] metaclass.livejournal.com
Синтаксические ошибки определяются в момент выполнения, а не в момент загрузки файла.
Можно убить чужие переменные инстанса, присвоив свою такую же.

Это в сумме дает безумие, с которым могут справится только люди: 1) хорошо выспавшиеся 2) не голодные 3) имеющие юнит тесты 4) с нормальным объемом внимания и памяти.

Date: 2013-08-14 09:17 am (UTC)
From: [identity profile] vinslivins.livejournal.com
эмм. а на кложе можно писать без юнит-тестов?
(ну и вообще, какие динамические языки, ну кроме эрланга, позволяют писать что-то среднее без юнит-тестов?)

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

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

Date: 2013-08-14 10:05 am (UTC)
From: [identity profile] metaclass.livejournal.com
For the most part, mixin modules don’t use instance variables directly—they use accessors
to retrieve data from the client object. But if you need to create a mixin that has to have its
own state, ensure that the instance variables have unique names to distinguish them from any
other mixins in the system (perhaps by using the module’s name as part of the variable name).
Alternatively, the module could use a module-level hash, indexed by the current object ID, to
store instance-specific data without using Ruby instance variables:

Date: 2013-08-14 02:19 pm (UTC)
From: [identity profile] theiced.livejournal.com
юнит тесты вообще не нужны

Date: 2013-08-14 03:28 pm (UTC)
From: [identity profile] vinslivins.livejournal.com
ну это я переводил для человека из мира дотнета.
не юнит тесты а просто тесты. на юнит-тесты пох, если фреймворк их заменяет, как например рельсовые валидации

Date: 2013-08-14 10:59 am (UTC)
From: [identity profile] Дмитрий Васильев (from livejournal.com)
Синтаксические ошибки определяются в момент выполнения, а не в момент загрузки файла.

vagrant@precise32:~/test_sntx_error$ cat test_sntx_error.rb
puts 'Check that ruby does not load syntactically incorrect files'
require_relative 'wrong_file'
puts 'This line is expected to be never printed'
vagrant@precise32:~/test_sntx_error$ cat wrong_file.rb
def syntactically_incorrect_function.rb
  ({){
end
vagrant@precise32:~/test_sntx_error$ ruby test_sntx_error.rb
Check that ruby does not load syntactically incorrect files
test_sntx_error.rb:2:in `require_relative': /home/vagrant/test_sntx_error/wrong_file.rb:2: syntax error, unexpected ')', expecting '}' (SyntaxError)
  ({){
     ^
        from test_sntx_error.rb:2:in `'
vagrant@precise32:~/test_sntx_error$


Date: 2013-08-14 11:10 am (UTC)
From: [identity profile] metaclass.livejournal.com
class Test
 def some_method
  puts "some_method"
 end
end


puts "trying to call something"

a = Test.new
a.some_method1


выводит:
trying to call something
t1.rb:11:in `': undefined method `some_method1' for # (NoMethodError)

В гроб такие языки загонят.

Date: 2013-08-14 11:32 am (UTC)
From: [identity profile] trueblacker.livejournal.com
Ну логично же, осмысленность очередной строчки может быть результатом выполнения предыдущей.

Date: 2013-08-14 11:35 am (UTC)
From: [identity profile] metaclass.livejournal.com
Это потому что никто в статик типы и одновременно в нормальный user experience для языка не умеет.
Либо хипсторасы рубейные с таким вот калом, либо язык на котором можно вывернуть мозг для писания, либо ограниченная анальная жаба.
Дотнет, C# и F# сами по себе неплохи, но у них инфраструктура и высокоуровневые либы все говно.

Date: 2013-08-14 11:43 am (UTC)
From: [identity profile] trueblacker.livejournal.com
истинная причина, ящитаю, как всегда в безблагодатности.

Date: 2013-08-14 01:08 pm (UTC)
From: [identity profile] veremeenko-alex.livejournal.com
Так выбора из динамических нет. Остальное еще хуже.

Date: 2013-08-14 07:02 pm (UTC)
From: [identity profile] vinslivins.livejournal.com
ну вот тесты писать пушкин будет, да?

Date: 2013-08-14 08:16 am (UTC)
From: [identity profile] vinslivins.livejournal.com
если по пунктам сравнить?

Date: 2013-08-14 08:18 am (UTC)
From: [identity profile] vinslivins.livejournal.com
а есть что лучше кложи для командной разработки?

Date: 2013-08-14 08:21 am (UTC)
From: [identity profile] metaclass.livejournal.com
Из простого - только дотнет. Т.е. сравнимого с простотой руби.
Жаба-скала - ебаный ентерпрайз, там не принято делать просто.

Date: 2013-08-14 07:39 am (UTC)
From: [identity profile] zelanton.livejournal.com
Да пилите уже свой SaaS.

Date: 2013-08-14 10:25 am (UTC)
From: [identity profile] berezovsky.livejournal.com
Вселенная по своей задумке склонна к порождению нетривиальных проблем.
А у тебя две ошибки в заголовке!111

Date: 2013-08-14 02:17 pm (UTC)
From: [identity profile] theiced.livejournal.com
тебя покарает анальный крокодил

Date: 2013-08-15 03:40 pm (UTC)
From: [identity profile] dennab.livejournal.com
Тупой вопрос: а чем Фиребирд плох кроме названия?

Date: 2013-08-15 05:13 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Авторы больше уделяют внимания рефакторингу старого кода с C на C++ и поддержке новых фич, вместо надежности и средств мониторинга. Т.е., условно говоря, больше уделяют внимания хотелкам программистов, чем хотелкам админов.

Но зато он хорошо поддерживает стандарты SQL, удобен в разработке и деплойменте.

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

Date: 2014-01-21 10:38 pm (UTC)
From: [identity profile] yuri-yurkevich.livejournal.com
Важно не упустить момент, когда на зарабатывание денег уходит больше времени, чем на их трату.

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

Date: 2014-01-21 10:40 pm (UTC)
From: [identity profile] yuri-yurkevich.livejournal.com
Даже не столько времени, сколько сил.

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 18th, 2025 01:19 pm
Powered by Dreamwidth Studios