LINUX.ORG.RU

Сообщения Graduate

 

Хочу стать программистом C/Linux в 32 года — часть 2

Форум — Talks

Это продолжение моего первого поста.

Перед Новым годом отправил резюме в компанию в своём городе Владивостоке. К сожалению, это единственная компания в нашем регионе, которая нанимает C/C++ программистов. (Если вы не знали, на всём Дальнем востоке есть только две крупные IT-компании: это Farpost и Ронда. Farpost занимается веб-порталами, а Ронда это небольшой Luxoft, которая делает как свои проекты, так и серьёзный софт на заказ для американцев и японцев.)

HR говорит: «Давайте вы сначала напишите наш тест на знание языка C. В отдел встроенных систем они берут только тех, кто хорошо сдал тест на 30-40 баллов.» Я спрашиваю: «А какой максимальный балл?» Ответ: «100 баллов.» Оказывается, у них там какой-то сложный тест, за неправильные ответы снимают баллы, и вообще можно в минус уйти.

Я написал тест на 98 баллов. Они ответили, что это отличный результат и они «очень заинтересованы» в моей кандидатуре и хотят меня нанять, открытие новых вакансий ожидают в начале февраля. Февраль прошёл, а я ещё не нанят. Это не значит, что они лгали, у меня есть причины так полагать. Наверное, хотят «сбросить жир» и не нанимают новых разработчиков на место уволившихся.

Вообщем, я решил также развиваться в C++. Очевидно, что для плюсовиков в разы больше вакансий, чем для сишников. Но продолжаю полировать свой C и изучать устройство Linux. Концепции операционных систем применимы во всех областях, даже в веб.

 , , , ,

Graduate
()

Хочу стать программистом C/Linux в 32 года

Форум — Talks

Мне почти 32 года. До этого немного программировал как хобби. Хочу профессионально устроиться разработчиком в области C/Linux или встроенные системы.

Последние несколько месяцев изучал алгоритмы, язык C и низкоуровневое программирование. Сейчас начал читать книгу Керриска по Linux.

Какие мои шансы получить свою первую работу джуниором (в любом городе), скажем, через 4 месяца? К этому времени изучу 2/3 Керриска. Вообще приветствуются любые советы.

Перемещено tailgunner из job

 , , ,

Graduate
()

Вопрос по наследованию приватных переменных в PHP

Форум — Web-development
class A {
    private $id = 'A';
    private function foo() {
        echo "func A";
    }
    public function test() {	
	echo $this->id . "\n"; // Берёт значение из A, не из B
        $this->foo(); // То же самое
    }
}

class B extends A {
	private $id = 'B';
	public function foo() {
	     echo "func B";
	}
}


$b = new B();
$b->test(); // "A, func A"

Я хочу, чтобы выводил «B, func B»

 

Graduate
()

Ссылки на элементы массива в PHP

Форум — Web-development

Это очень интересный прикол с массивами в PHP, если о нём не знать заранее, можно сломать голову на поиск ошибки, если с ним столкнуться.

$arr = array(
    'a' => 1,
    'b' => 1,
);
$ref= &$arr['b']; // $ref ссылается на те же данные, что и $arr['b']
$copy = $arr; // $copy должен содержать независимую копию массива $arr
$copy['b'] = 'X'; // $arr не должен быть изменён
print_r($arr); // $arr( 'a' => 1, 'b' = 'X' ) $arr изменён, ёлки-палки

unset($ref); // Удаляем постороннюю ссылку
$copy = $arr;
$copy['b'] = 'Y'; // Измениться ли $arr?
print_r($arr); // $arr( 'a' => 1, 'b' = 'X' ) - Нет

Как я понял, если существует хотя бы одна переменная, которая ссылается на те же данные, что и некоторый элемент массива, то этот элемент массива всегда будет копироваться «по ссылке», когда копируется сам массив. Если же удалить эту постороннюю переменну-ссылку (в примере выше это $ref), то элемент массива начинает копироваться как должен.

Graduate
()

Наследие в PHP

Форум — Web-development

Есть дерево наследования классов A -> B -> C -> D -> ... Я хочу, чтобы каждый класс имел свою собственную статическую переменную $c. Но я не хочу в каждом классе объявлять её отдельно (static protected $x;). Есть ли способ автоматизировать этот процесс? Можно ли что-нибудь написать в самом старшем классе A, чтобы все его наследники обладали собственной переменной?

Я в начале подумал, что можно в каждом классе задавать trait Foo; - но это не работает, потому что с помощью traits можно присваивать только функции, но не переменные.

Интересует именно собственная переменная, а не одна, наследуемая всеми детьми от своего родителя.

 

Graduate
()

Цикл над буквами

Форум — Web-development
    for ($i='a'; $i<='z'; $i++) {
        echo "$i ";
    }

Выводит где-то 200 сущностей с 'x' по 'yz'. Но from 'a' to 'y' работает правильно.

 

Graduate
()

Вложенные тернарные операторы

Форум — Web-development

$a = 1;
echo  $a == 1 ? 'one' : $a == 2 ? 'two' : 'other'; // shows 2

Можете пошагово объяснить обработку этого выражения интерпретатором?

 

Graduate
()

PHP: операторы сравнения и назначения

Форум — Web-development

Операторы сравнения в PHP (==, !=, === etc.) имеют больший приоритет, чем оператор назначения (=).

$a = 2;
$b = 5;
$a = $b == $a; // $a = false; все правильно
$a == $b = $a; // должно быть false = $a, затем ошибка, но все получается будто $a == ($b = $a);

В чем проблема?

 

Graduate
()

Подключение wi-fi роутера (проблема с кабелями)

Форум — General

У меня протянут круглый телевизионный кабель, который подключен к спец. модему, из этого модема идет Ethernet-кабель прямо в компьютер. Я захотел создать в доме беспроводной интернет: купил wi-fi роутер ASUS DSL-N10, но он хочет получать интернет по телефонному кабелю, а у меня есть интернет по Ethernet-кабелю. Что мне делать? Купить и использовать переходник Ethe-Tel, это сработает?

Graduate
()

Окно выбора пользователя (смена)

Форум — General

Ubuntu 10.04, Gnome.
Как поменять окно выбора пользователя. Я хочу чтобы список пользователей исчез, осталась только строка для ввода имени пользователя вручную.

Graduate
()

Сеть через прокси

Форум — Admin

Как установить прокси для сети в Linux Ubuntu, чтобы все запросы в сеть проходили через другой IP (прокси). Прокси с логином / паролем.

Graduate
()

Настройка Postfix как сервера отправки с аунтетификацией

Форум — Admin

Установлен на сервере Postfix. Он настроен на получение почты, плюс отправляет почту только на домены, указанные в строке «relay_domains = apple.com, gmail.com» файла main.cf, и при этом не запрашивает логин / пароль, то есть отправлять может кто угодно.

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

Каким самым простым способом это осуществить?

Graduate
()

Монтировать устройство с правами для всех пользователей

Форум — Admin

Как в Ubuntu 10.04 смонтировать устройство чтобы для все пользователи имели возможность читать и писать. У меня получается только с правами для root (drwx------). Опция 'user' в fstab не работает.

Вот моя запись в fstab:
device /mnt/device vboxsf rw 0 0

Graduate
()

На виртуальной машине Virtual Box сделать доступным раздел диска

Форум — General

Может кто-нибудь простецкий способ объяснить как в Linux в виртуальной машине Virtual Box (Linux) сделать доступным раздел физического диска?

Graduate
()

Linux может идентифицировать себя в Web как другая ОС

Форум — Desktop

Можно заставить Linux (у меня Ubuntu) идентифицировать себя в Веб не как OS Linux, а как любая другая OS, к примеру, Windows. Я имею ввиду, когда сайт определяет твою ОС, я хотел бы чтобы Linux сообщал ему будто он Windows.

Graduate
()

как UTF-8 кодирует так много языков

Форум — Development

Это, наверное, глупый вопрос, но он меня интересует давно - Если кодировка UTF-8 использует только 8 бит для кодирования символа, то как с помощью этой кодировки может быть представлено так много языков, в ней уж явно больше 256 символов :)

Graduate
()

ulimit -n — не могу изменить

Форум — Admin

Как я понимаю, для nginx важен параметр ulimit -n (дефолтно 1024). Я не могу его увеличить так, чтобы он оставался таким же после перезагрузки!

1) Добавляю в скрипт /etc/init.d/nginx строку «ulimit -n 10000» — Не работает, все равно 1024

2) Изменяю файл /etc/security/limits.conf — Не работает, по каманде «ulimit -n» выдает 1024

Как изменить ulimit на постоянной основе и желательно только для одного конкретного юзера??

Graduate
()

Nginx - только что поставил

Форум — Admin

На сервере чисто для статики заменил Apache на nginx. Страницы со множеством картинок стали грузиться заметно быстрее.

Но вот вопрос. Сервер в некоторые дни испытавает нагрузку в N * 100,000 посетителей в день, и все они что-то грузят. Необходимо настроить конфиг nginx чтобы он не «загнулся».
Как я понял, основные параметры это: worker_processes (1) и worker_connections (1024). На одном сайте прочитал, что worker_processes * worker_connections = макс. число соединений.
Так ли это? Какие числа для этих параметров посоветуете? Что еще можно подправить?

Graduate
()

vsftpd на несколько IP

Форум — Admin

Не могу настроить vsftpd на прослушивание двух IP.

Пишу так:
listen=YES
listen_address=109.68.51.84
listen_address=109.68.51.85
(Работает только второй IP)

Если пишу так:
listen=YES
listen_address=109.109.9.84 109.109.9.85
(Работает только первый IP)

IP через запятую - прграмма не запускается

Graduate
()

Postfix: Настроил smtp, перестал получать письма

Форум — Admin

В конце файла main.cf (Postfix) добавил настройки для smtp:

smtpd_sasl_auth_enable = yes
smtpd_security_options = noanonymous
smtpd_client_restrictions =
permit_sasl_authenticated,
reject_plaintext_session
smtpd_sender_restrictions =
permit_sasl_authenticated,
reject_plaintext_session

После этого сервер начал отправлять письма с авторизацией для smtp, но перестал получать их. Полученные письма сервер не отклоняет, но по ящикам юзеров их не раскидывает.

Graduate
()

RSS подписка на новые темы