LINUX.ORG.RU
ФорумTalks

Ежегодный опрос stackoverflow

 


0

1

Опрошено 26086 человека. Никаких необычных результатов вроде нет.

Средний возраст 28.9 лет.

92.1% мужчины, женщины 5.8%, 0.5% «иное».

только 8% не участвуют в opensource проектах или на стороне.

54.4% Javascript.

20.5% используют Linux (в основном Убунта).

15.2% используют vim, emacs 3.8%. Лидеры NotePad++ (34.7%) и Sublime Text (25.2%)

Ну и там ещё куча всего тыц

upd: ах да: табуляциями отступ делают 45%, но пробелы предпочитают более опытные.

★★

Табы рулят

табуляциями отступ делают 45%, но пробелы предпочитают более опытные.

Более опытные просто не лезут на рожон, потому используют то что досталось.

Camel ★★★★★ ()

0.5% «иное»

Вот не понимаю я разработчиков, которые в gender ENUM('male', 'female', 'unknown') добавляют 'other'. Нафига?

drull ★☆☆☆ ()
Ответ на: Табы рулят от Camel

Табы рулят

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

drull ★☆☆☆ ()
Ответ на: комментарий от drull

Не совсем так. Скажем, мой код с выравниванием табами у другого может выглядеть ужасно, т.к. у меня 8 симолов на табуляцию, а у него — 4.

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

Eddy_Em ☆☆☆☆☆ ()
Ответ на: комментарий от drull

Лулзы?
Один из курируемых мной сайтов имел в своё время перевод на эсперанто. А вот просто так. Because I can. Just for fun...

Stahl ★★☆ ()
Ответ на: комментарий от drull

Вот не понимаю я разработчиков, которые в gender ENUM('male', 'female', 'unknown') добавляют 'other'. Нафига?

Действительно, там должен быть varchar(255) и пусть хоть сочинение пишут. В самом деле, кому оно мешает?

x3al ★★★★★ ()
Ответ на: комментарий от x3al

не, BLOB, и загружать туда фоточку, поясняющую по хардкору

Harald ★★★★★ ()
Ответ на: комментарий от drull

Потом статистику хрен соберешь: female, woman, girl, bitch, queen, F, женский, женщина, Ж, etc.

Смотря какая статистика тебе нужна. Если делать выбор из двух вариантов — трансы, может, и впишутся (туда ли, куда хочешь — отдельный вопрос), а сомневающиеся тебе её в любом случае попортят. Лучше для них отдельный вариант: other (255 символов).

x3al ★★★★★ ()
Ответ на: комментарий от Eddy_Em

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

Stahl ★★☆ ()
Ответ на: комментарий от Stahl

Да я просто глянул на твою аватару. Все с тобой ясно.

Eddy_Em ☆☆☆☆☆ ()
Ответ на: комментарий от drull

Потом статистику хрен соберешь: female, woman, girl, bitch, queen, F, женский, женщина, Ж, etc.

select gender, count(gender) from survey group by gender order by gender desc;

вот тебе и статистика :)

Harald ★★★★★ ()
Ответ на: комментарий от Sadler

А что поделать-то? К сожалению, клиентскую сторону сайтега на сишечке не напишешь ☹ Вот и приходится этот гадский жабкоскрипт использовать.

Eddy_Em ☆☆☆☆☆ ()
Ответ на: комментарий от Sadler

Ха! 54% жаваскрипта.
А ещё сколько спроцентов сишников, плюсовиков и прочих вылизывают интерпретаторы, серверы и браузеры, чтобы 54% вредителей не поставили раком весь интернет?!
Думаю %60 людей заняты прямо или косвенно околожаваскриптовой ахинеей.

Stahl ★★☆ ()
Ответ на: комментарий от Eddy_Em

4.2

Не совсем так. Скажем, мой код с выравниванием табами у другого может выглядеть ужасно, т.к. у меня 8 симолов на табуляцию, а у него — 4.

Можете пример показать?

Пробелы — единственное, что гарантирует тебе одинаковое отображение файла везде.

Это недостаток, а не достоинство. Поймите, табуляцией надо делать отступы, а выравнивание — пробелами. Тогда отступы останутся отступами при любой ширине табуляции на экране, а выравненный код останется выравненным.

Camel ★★★★★ ()
Ответ на: комментарий от wisp

Выравнивание не отступ!

Многое зависит от языка.

Python 3 disallows mixing the use of tabs and spaces for indentation.

Ещё один не отличает отступ (indentation) от выравнивания (alignment). indentation надо делать табуляцией, alignment — пробелами. Это не смешивание, и у пейтона нет с этим проблем.

Camel ★★★★★ ()
Ответ на: комментарий от wisp

Так зол, что повторю

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

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

Camel ★★★★★ ()
Ответ на: 4.2 от Camel

Вот пример. У меня 4 пробела на табуляцию, и выглядит более-менее компактно, однако, на гитхабе и сосфорже — 8 пробелов. Смотри сам: гитхаб, сосфорж. Некоторые вещи (когда уровень где-нибудь так восьмой-десятый) вообще уезжают черт-те куда.

Ща еще тут глянем:

 *              CC1S: comp/capt selection
 *               00: CC1 is out
 *               01: CC1 is in (TI1FP1)
 *               10: TI2FP1
 *               11: (only for TIM5)
 *              IC1F: input capture filter  (0 - no filter)
 *              IC1PSC: capture prescaler (0 - no, xx - 2^{xx} events)
 * TIM2_CCMRx - the same for channels 2 & 3
 * TIM2_CCERx - CC polarity/enable (lowest 2 bytes in each 4): P=1:active high/capture on rising edge;
 * TIM2_CNTRH, TIM2_CNTRL - counter value (automatical)
 * TIM2_PSCR - prescaler value, lower 4 bits
 * TIM1_ARRH, TIM1_ARRL   - auto-reload value (while zero, timer is stopped) (page 206)
 * TIM2_CCRxL/H - compare/capture registers
 */

void onewire_setup(){
// freq = 1MHz: psc=16 -> TIM2_PSCR = 4
        TIM2_PSCR = 4;
// AIN: PD3 / TIM2_CH2 -> CC1 will be input on TI2FP1 & CC2 will be output
        // configure pin CC2 (PD3): open-drain output
        PORT(PD, DDR) |= GPIO_PIN3; // output & pseudo open-drain
        PORT(PD, CR2) |= GPIO_PIN3; // fast
        // out: PWM mode 1 (active -> inactive), preload enable
        // CCMR2: | 0 | 110 | 1 | 0 | 00 |
        TIM2_CCMR2 = 0x68;
        // in: TI2FP1

Eddy_Em ☆☆☆☆☆ ()
Ответ на: Так зол, что повторю от Camel

Пример

    // Tab size: 4                // Tab size: 2
    if(foo) {                     if(foo) {
    --->char quux[4] = {0, 1,     ->char quux[4] = {0, 1,     // "0" and "2"
    --->................2, 3};    ->................2, 3};    // remain aligned
    }                             }
Camel ★★★★★ ()
Ответ на: комментарий от Eddy_Em

Выравнивание же!

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

А тот код который вы здесь процитировали вообще отформатирован хер пойми как.

Camel ★★★★★ ()
Ответ на: Выравнивание же! от Camel

Во, кстати, хороший пример, как поехали табы:

#define	NO_QS	0
#define	NO_LOGIN	-1
#define	NO_PASSWD	-2
#define	WRONG_PASSWD	-3
#define	BAD_URL	-4
#define	BAD_IP	-5
#define	NO_DB	-6
#define	NO_REG	-7
#define	BAD_SERV	-8

выравнивание сделано табуляцией

Мне нравится так. Потому что пробелы 100500 раз давить задалбывает! А табами — жамк, жамк — и готово!

Eddy_Em ☆☆☆☆☆ ()
Ответ на: комментарий от Eddy_Em

Разъяснения

Не вижу никакой разницы между отступами и выравниваниями. Чем они отличаются?

Отступы это логическое выделение. Выравнивание — графическое. Из этого вытекает ряд простых правил:

  • Использовать редактор с нормальной поддержкой выравнивания и отступов, например Emacs с Smart Tabs
  • Табуляция всегда идёт только в начале строки, первее может быть только знак комментария.
  • Если код надо выравнять с предыдущей строкой, то в начале должен стоят такой же отступ (должно стоять такое количество знаков табуляции).
  • Всё что правее первой не-табуляции выравнивается, то есть оформляется пробелами.
Camel ★★★★★ ()
Ответ на: комментарий от Eddy_Em

Нормальный редактор решает

Во, кстати, хороший пример, как поехали табы:

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

Мне нравится так. Потому что пробелы 100500 раз давить задалбывает! А табами — жамк, жамк — и готово!

Или просто использовать нормальный редактор.

Camel ★★★★★ ()
Ответ на: Разъяснения от Camel

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

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

Eddy_Em ☆☆☆☆☆ ()
Ответ на: Нормальный редактор решает от Camel

использовать нормальный редактор

Я использую mcedit и geany, больше ничего не знаю и знать не хочу.

В любом случае, у меня mcedit довольно-таки часто используется (захожу на другой компьютер по ssh и на месте правлю код, т.к. иной раз тупит графика, да и не везде я — рут, т.е. geany есть далеко не на всех компьютерах). Больше удобных консольных редакторов нет.

Eddy_Em ☆☆☆☆☆ ()
Ответ на: Так зол, что повторю от Camel

Отступы надо делать табуляцией, выравнивание пробелами.

Это ад. За такое расстреливать надо! После первого же редактирования твое «выравнивание» слетит, так как эта фича поддерживается в очень ограниченном числе редакторов да и в тех после пляски с бубном.

Reset ★★★★★ ()
Последнее исправление: Reset (всего исправлений: 1 )
Ответ на: комментарий от Reset

Точно слетит vs. гарантированно слетит

После первого же редактирования твое «выравнивание» слетит

Конечно слетит, оно же пробелами сделано. А какую вы предлагаете альтернативу? Вы знаете какой-то способ выравнивания при котором не слетит?

Camel ★★★★★ ()
Ответ на: 4.2 от Camel

Это недостаток, а не достоинство. Поймите, табуляцией надо делать отступы, а выравнивание — пробелами. Тогда отступы останутся отступами при любой ширине табуляции на экране, а выравненный код останется выравненным.

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

ilammy ★★★ ()
Ответ на: Точно слетит vs. гарантированно слетит от Camel

1. Не использовать табы вообще 2. Конкретно для данного примера отступы/выравнивание надо делать так

if(foo) {                     
       char quux[4] = {
            0, 1, 
            2, 3
       };
}

Reset ★★★★★ ()
Последнее исправление: Reset (всего исправлений: 1 )
Ответ на: Точно слетит vs. гарантированно слетит от Camel

Конечно слетит, оно же пробелами сделано.

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

if(foo) {                 
--->char bar[4] = {0, 1, 
--->...............2, 3};
}                         

при замене 3 на 4 превращается в говно:

if(foo) {                 
--->char bar[4] = {0, 1, 
--->--->--->--->...2, 4};
}                         
ilammy ★★★ ()

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

entefeed ☆☆☆ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.